java系统找不到指定文件怎么解决
299
2022-10-23
Windows和Linux操作系统的流式处理API
进程的任何线程都会调用 ExitProcess 函数。
如果其中一个线程调用退出函数(对于 Linux 操作系统),或者ExitProcess或TerminateProcess(对于 Windows 操作系统),那么整个进程将被终止。同样,如果一个线程接收到一个动作包含在进程终止中的信号,这个信号将终止整个进程。
让我们总结一下。正确设计的应用程序不应调用强制线程终止函数。推荐的方法是线程函数返回时。在 Linux 操作系统中线程终止的情况下,连接将释放进程拥有的链接和系统资源。必须适当考虑两次调用 join 函数是不正确的事实(最好会出现错误)。如果 Windows 操作系统的线程被强制终止,请务必注意所有非系统资源应以任何方式清理。在 Linux 中,有pthread_cleanup_push和pthread_cleanup_pop函数。
线程终止函数记录在表 5 中。
表 5. 线程终止函数。
结论
为了减轻中断的影响,操作系统提供了一个由并行运行的进程组成的模型。但是,该模型在交互、自身地址空间的可用性等方面存在弱点。
另一方面,应用程序在一个进程中拥有多个控制线程可能是有利的。由于这些线程属于同一个进程,它们使用自己堆栈上的共享地址空间。
线程可以使用信号量、消息等原语相互交互。这些原语对于使在临界区中不可能同时执行两个或多个线程是必要的。线程可以处于以下状态之一:可运行或执行阻塞。一个线程也可以使用交互原语与另一个线程交互。请记住,在使用交互原语时,应小心避免错误和死锁。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~