[2013.8.29]对于多线程编程的几点个人见解

简介: (部分来源于《深入理解计算机系统》一书)1.线程有两种状态:聚合态和分离态。聚合态线程拥有一个句柄可被控制,分离态线程虽然可以正常运行,但不可以通过句柄控制。

(部分来源于《深入理解计算机系统》一书)

1.线程有两种状态:聚合态和分离态。聚合态线程拥有一个句柄可被控制,分离态线程虽然可以正常运行,但不可以通过句柄控制。

2.线程刚刚创建出来是聚合态的,在运行中关闭句柄可以转化为分离态,且不可逆。

3.分离态线程在执行完退出后自动回收资源。聚合态必须显式调用关闭句柄来回收资源(特别是线程外调用了终止线程来终止的情况)。

4.线程内自己退出优于线程外强制终止线程。

5.不建议使用挂起和恢复操作。

然后就是这个两大API平台库的对比
表面上windows不支持posix接口 但是他的接口跟posix也差不多

Posix / Win32API

pthread_create / CreateThread
pthread_cancel / TerminateThread
pthread_join / WaitForSingleObject
pthread_exit / ExitThread
pthread_detach / CloseHandle

相关文章
|
5月前
|
安全 Java 数据处理
Python多线程编程:概念、技巧及最佳实践
Python多线程编程:概念、技巧及最佳实践
面试官:小伙子我们先来唠唠并发编程的几大核心知识点
并发编程算是Java的一个难点,经常做业务相关的程序员基本上用不到juc的包,但是这些知识点十分重要,所以不管在哪里,时刻保持学习真的很重要。
二十、经典同步问题-读者写者问题
二十、经典同步问题-读者写者问题
|
数据采集 算法 数据库
库调多了,都忘了最基础的概念-《死锁与范式的碰撞》
库调多了,都忘了最基础的概念-《死锁与范式的碰撞》
84 0
库调多了,都忘了最基础的概念-《死锁与范式的碰撞》
|
设计模式 运维 架构师
90%的程序员,都没用过多线程和锁,怎么成为架构师?
如果是框架和中间件的存在,是了让程序员只关心业务开发。那为什么你面试的时候会被问到核心组件的设计和原理呢? 在这个年代,别放弃学习是你几乎唯一的生存途径。
143 0
90%的程序员,都没用过多线程和锁,怎么成为架构师?
|
Java
Java多线程学习(五)线程间通信知识点补充
欢迎关注我的微信公众号:**“Java面试通关手册”**(分享各种Java学习资源,面试题,以及企业级Java实战项目回复关键字免费领取)。另外我创建了一个Java学习交流群(群号:**174594747**),欢迎大家加入一起学习,这里更有面试,学习视频等资源的分享。
2241 0
|
Java Linux 缓存
《Java并发程编程艺术》重点总结
synchronized修饰的代码块同步执行,不在synchronized块中的代码会异步执行,因此推荐用同步代码块,而非同步整个方法。 synchronized修饰同步方法和代码块,一定是排队运行的(线程独占)。
882 0