【发布时间】:2013-09-06 21:30:41
【问题描述】:
如果我有一个创建 N 个线程的进程;即 T1 .... Tn。假设 N 个线程正在使用锁 L 在它们之间进行同步。如果这个进程调用fork()
- 新创建的子进程有 N 个线程还是只有 1 个线程?来自this question,看起来只有 1 个线程
- 锁 L 被复制到具有相同值的新 内存(物理)位置,对吧?
- 如果对问题 (1) 的回答是只有 1 个线程被复制,如果 T1 已锁定 L 并且从另一个线程 T2 调用 fork(),那么在新进程中会发生什么。 L 会一直被锁定吗?
【问题讨论】:
标签: multithreading synchronization thread-safety fork