Posted on 2007-03-26 21:00
kk 阅读(523)
评论(0) 编辑 收藏 引用 所属分类:
IT
合作型多任务(
cooperative multitasking
)允许执行多个任务,但分享
CPU
是程序(而非操作系统)的责任。如果有一个程序决定咬住
CPU
不放,其它程序就停摆了。
抢先式多任务(
preemptive multitasking
)操作系统能够强迫应用程序把
CPU
分享给其他人,程序员不需要什么额外的努力。虽然这个减少了程序员的工作,也不会因为某个程序拒绝分享
CPU
而造成其他程序
hang
住,但是它使得各个线程之间的执行顺序不可预测,从而导致了
race condition
等一系列问题。