POSIX线程与Win32线程

问题描述

|| 我只是将脚趾浸入POSIX池中,并首次尝试了POSIX线程。到现在为止,我一直感觉到POSIX线程和Win32线程之间存在很大的体系结构差异,但是从我尝试过的(虽然很小)来看,我并没有真正看到任何差异。 我仍然很好奇-POSIX线程和Win32线程之间有什么区别(如果有)?它们从根本上是不同的,还是仅存在细微的差异?     

解决方法

在Windows NT系列内核和许多Unix内核中,“如何在后台”管理和调度线程之间存在巨大差异,但这不是问题。 如果您只是在谈论接口(由Win32线程和POSIX线程公开的服务),通过一些工作,您几乎可以将任何POSIX线程功能映射到Win32等效的〜1:1。并且它已经完成(请参阅pthreads-win32)。 我可能注意到的一个很大的不同是,在Win32下,您使用实际的系统调用来处理线程,而POSIX线程的调用是库(pthread)的一部分,在许多Unix系统下,它调用了一些非常底层的系统调用。 Unix内核(在Linux下为clone())。 只是为了向您证明,除非深入研究,否则pthreads没什么特别的,您可以下载暴露了与pthreads完全相同的接口的pthreads-win32,并且任何函数都映射在Win32线程API上。而且有效。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...