进程间通信IPC:

TCP socket(只用这个):好处是进程关闭了能够被感知,坏处是太慢了。

进程信号(消息队列):

共享内存文件:

管道:

进程间堆和栈都是独立的,不需要锁,需要的也是文件锁之类的大锁,并不需要条件变量、互斥锁来同步。

线程间同步:

互斥锁:除了线程栈里的东西其他都是共享的。需要用锁来完成变量级别的同步。

信号量:

原子操作原子操作:

线程间的栈是独立的,堆是共享的。

休眠、唤醒、抢占、中断、阻塞、非阻塞。

同步、异步