我是出于好奇而问这个的。
Windows 提供了他们所谓的Fibers API,它是一种用于轻量级用户进程/线程的 API。
我很想知道 Mac OS 是否也提供这样的功能。据我所知,与它最接近的 Unix 将是setcontext
函数系列。但是,尝试在 Mac 程序上调用此类 API 会产生警告,指出这些函数自 OSX 10.6 以来已被弃用。此外,当我尝试编译和运行上面维基百科链接中提供的示例时,我的机器上的第一个swapcontext
.
因此,显然setcontext
API 不适用于 Mac。至少不再了。有没有其他方法可以在 Mac OS 上实现轻量级的用户端线程?系统是否提供这样的功能?