使用popen时输出速度真的很慢吗? 我在使用C++中的POPON时会遇到性能问题。与直接打开子流程时相比,屏幕上显示的输出看起来非常慢。它看起来好像是每一秒都在刷新,而不是一直在刷新。。。我甚至尝试不使用endl,并将_与_stdio同步(false),但似乎没有任何东西可以加快输出速度
这是我的密码:使用popen时输出速度真的很慢吗? 我在使用C++中的POPON时会遇到性能问题。与直接打开子流程时相比,屏幕上显示的输出看起来非常慢。它看起来好像是每一秒都在刷新,而不是一直在刷新。。。我甚至尝试不使用endl,并将_与_stdio同步(false),但似乎没有任何东西可以加快输出速度,c++,stream,popen,C++,Stream,Popen,这是我的密码: int main() { FILE *in; char buff[4096]; //cout.sync_with_stdio(false); if(!(in = popen("python websocket/test.py", "r"))){ return 1; } while(fgets(buff, sizeof(buff), in)!=NULL){ cout << "====
int main() {
FILE *in;
char buff[4096];
//cout.sync_with_stdio(false);
if(!(in = popen("python websocket/test.py", "r"))){
return 1;
}
while(fgets(buff, sizeof(buff), in)!=NULL){
cout << "====>>" << buff << endl;
}
pclose(in);
return 0;
}
intmain(){
文件*in;
字符buff[4096];
//cout.sync_与_stdio(false);
if(!(in=popen(“pythonwebsocket/test.py”,“r”)){
返回1;
}
while(fgets(buff,sizeof(buff),in)!=NULL){
我对popen知之甚少,但我认为in=popen(“python-websocket/test.py”,“r”)
应该是in==popen(“python-websocket/test.py”,“r”)
,带有两个“相等”标记==
@YazanWYusuf:不,可能会让人混淆:“in”正在初始化,然后检查是否为零将与一个统一化的“in”变量进行比较。makepython
更快地刷新其标准缓冲区或取消缓冲其输出:python-u websocket/test.py
。请参阅中的第二个原因,我认为它是有效的!!“-u”是做什么的??