我正在windows-XP下用C语言编写一个多线程应用程序。我正在寻找一种运行函数的方法,就在应用程序的线程之间的每次上下文切换之后(以及新线程开始之前)。更准确地说,我想在某个内存地址中分配一个不同的值,这取决于我进入的是哪个线程。
有什么建议吗?
发布于 2013-02-28 16:27:50
在每次上下文切换后立即运行函数的
这是从一开始就注定要发生的事情:您无法控制上下文切换。当你的函数刚被调用时,如果操作系统切换,会发生什么呢?然后再换回来?又一次行刑?
如果你想要的只是每个线程都有一个特定内容的变量,请按照其他人的建议查看线程本地存储。
如果您需要的是对子流程计算和调度进行细粒度的绝对控制,那么可以使用fibers。但这不是一件轻松愉快的事情...
https://stackoverflow.com/questions/15129323
复制相似问题