红联Linux门户
Linux帮助

linux下一个诡异的漏洞

发布时间:2008-05-29 01:31:15来源:红联作者:laiden
今天我在做多线程的互斥锁研究中,研究主线程和子线程之间互斥锁是怎么抢占资源时:

发现一个问题:[code] for(i=0;i<10;i++)

{

printf("%d ",i);

sleep(5);

printf("%d",i);

}[/code]这个语句执行的结果是任何人都没有想到的是:屏幕一直等待,没有任何显示,按理,至少要显示个0;可是什么都没有,过了50s后才有了结果。这个也许是需要研究的。

待研究中。
文章评论

共有 3 条评论

  1. ftzhuihun 于 2008-06-05 15:45:52发表:

    我照着楼主的做了一遍和楼主一样的问题;
    第二次加了"\n”,输出是这样的0 01 12 23 34 45 56 67 78 89 9
    空格表示停顿

  2. glymcai 于 2008-06-02 16:01:43发表:

    因为你的printf没有加“\n”,导致输出在输出缓冲中,没有及时输出来。

  3. thungoder 于 2008-05-29 12:17:35发表:

    过了50s后才有了结果,什么结果?