是windows的一个bug的么?

696阅读 0评论2009-09-09 pagx
分类:WINDOWS

#include
#include

DWORD WINAPI ThreadProc(void *param)
{
    static int codec = 0;
    printf("Hello World: %p %d!\n",
        param, codec++);
    return 0;
}

int main(int argc, char *argv[])
{
    DWORD  threadid;
    HANDLE hthread = CreateThread(NULL, 0, ThreadProc,
        &threadid, 0, &threadid);
    CloseHandle(hthread);
    Sleep(01);
    return 0;
}

上面的代码在某些场合下将产生两行输出
Hello World: 0022FF74 0!
Hello World: 0022FF74 0!

不知道是否是windows的bug。
个人观点: 导致该问题的发生应该是在printf函数的实现身上。
上一篇:使用wjcdes的人未免太不够专业,wjc未经测试,误人子弟。
下一篇:一个别人写的IOCP的例子