其他分享
首页 > 其他分享> > Zircon 线程Thread

Zircon 线程Thread

作者:互联网

定义

thread - 可运行的 / 运算实体

描述

线程对象是一种表示时间共享的CPU执行上下文的结构。线程对象存在于关联的特定进程对象中,为其它对象提供I/O和计算所必须的内存和句柄。

生存期

线程是通过调用[zx_thread_create()]创建的,但只有在调用了[zx_thread_start()]或[zx_process_start()]时才开始执行。这两个系统调用将要执行的初始例程的入口点作为参数。

传递给zx_process_start()]的线程应该是进程中第一个开始执行的线程。

线程终止执行:

从入口点函数返回,线程不会终止执行。入口点函数的最后操作应该是调用[zx_thread_exit()]或上面提到的_exit()变体。

关闭线程的最后一个句柄也不会终止线程执行。为了强制杀死没有可用句柄的线程,使用[zx_object_get_child()]获取线程句柄。强烈建议不要使用此方法。杀掉正在执行的线程可能会将进程置于corrupt状态。

Fuchsia原生线程总是分离的。也就是说,不需要*join()*操作去完成干净的终止。但是,内核之上的一些运行时runtimes,例如C11或POSIX可能需要线程是连接的。

系统调用


标签:调用,Thread,thread,句柄,Zircon,exit,zx,线程
来源: https://blog.csdn.net/sinat_20184565/article/details/93907162