【发布时间】:2012-09-14 11:03:36
【问题描述】:
如果我有一些代码看起来像这样(请忽略语法,我想在没有指定语言的情况下理解它):
count = 0
def countDown():
count += 1
if __name__ == '__main__':
thread1(countDown)
thread2(countDown)
thread3(countDown)
这里我有一个只有一个核心的CPU,我真的需要锁定变量count,以防它可能被其他线程覆盖。
不知道,但是如果语言很在意,请在Java、C和Python下解释一下,非常感谢。
谢谢大家,我现在明白我确实需要一把锁。但这里还有一个问题,我什么时候需要使用多线程?
由于CPU只会执行一个instructor,看来多线程管理线程切换需要更多时间,无法节省计算时间。
【问题讨论】:
-
到时候你就知道了。
标签: multithreading operating-system thread-safety locking multiprocessing