一、在上一遍文章中写到多线程可能存在 问题,现使用程序证明:
在原有 的程序ThreadProc1中加入语句Sleep(1000),其他语句不变。
问题:
当调用Sleep(1000)函数后,ThreadProc1会暂停执行,释放时间片。此时ThreadProc2获取时间片继续运行,执行完成后,返回ThreadProc1执行printf("tickte1=%d/n",ticket);语句,输出0。
一、在上一遍文章中写到多线程可能存在 问题,现使用程序证明:
在原有 的程序ThreadProc1中加入语句Sleep(1000),其他语句不变。
问题:
当调用Sleep(1000)函数后,ThreadProc1会暂停执行,释放时间片。此时ThreadProc2获取时间片继续运行,执行完成后,返回ThreadProc1执行printf("tickte1=%d/n",ticket);语句,输出0。