【操作系统】进程 与 线程
oaeo 2011-07-29 12:52:47 背景:A是进程,A中除了主函数之外,有A1、A2……、An这么多函数。B是在Ax函数中被启动的一个线程。
看完背景后,回答第一个问题:
当主函数调用了A2,A2中又调用了Am,Am中又调用了Ax,Ax又调用……。
请问:在调用函数的过程中,例如在Ax函数中,还是属于A进程吗?
如果以上问题回答“是”,则看下一问题:
当主进程函数调用,运行到Aw函数中,此函数启动了一个线程B。请问:当Aw函数执行完后,返回调用Aw函数的上一级调用他的函数Az(当然,如果上一问你回答“是”,则Az仍然是主进程A的地盘)。
请问:Aw已经结束了,B还没执行完,则线程B会继续执行(因为Az仍然为主进程,主进程没结束,只主进程中启动线程的函数Aw结束了),还是线程B会被强制终止(因为Aw是启动B线程的函数,该函数结束了,则B也会被终止)?
回答完以上两个问题后,再想一下,线程到底是因为父线程(整体)结束而被强制终止,还是因为父线程中启动子线程的函数(局部)结束而被终止?
请高手回答以上三个问题,自己写个编号1、2、3。谢谢!