C 在Linux中使用pthreads时,是否必须在线程结束后关闭线程?
在WinAPI中,如果创建了一个线程,然后该线程结束,那么仍然需要调用线程句柄C 在Linux中使用pthreads时,是否必须在线程结束后关闭线程?,c,linux,multithreading,winapi,pthreads,C,Linux,Multithreading,Winapi,Pthreads,在WinAPI中,如果创建了一个线程,然后该线程结束,那么仍然需要调用线程句柄 在Linux中使用pthreads时,是否还必须在线程结束后关闭该线程?pthreads中的等效方法是在线程上调用pthread\u join()(如果线程还没有退出,这将一直阻止) 您还可以选择使用pthread\u detach()分离线程(或者使用pthread\u create()的pthread\u setdetachstate()的attr\u参数创建分离线程),这意味着不再需要连接线程。pthreads
在Linux中使用pthreads时,是否还必须在线程结束后关闭该线程?pthreads中的等效方法是在线程上调用
pthread\u join()
(如果线程还没有退出,这将一直阻止)
您还可以选择使用
pthread\u detach()
分离线程(或者使用pthread\u create()
的pthread\u setdetachstate()
的attr\u参数创建分离线程),这意味着不再需要连接线程。pthreads中的等效方法是调用pthread\u join()
在线程上(如果线程尚未退出,则会一直阻塞,直到线程退出)
您还可以选择使用pthread\u detach()
分离线程(或者使用pthread\u create()
的pthread\u setdetachstate()
的attr
参数创建分离的线程),这意味着不再需要连接线程。当您连接(未分离的)线程时会发生这种情况。如果不加入(非分离)线程,则在进程结束之前会发生资源泄漏。当加入(非分离)线程时会发生这种情况。如果不加入(非分离的)线程,则在进程结束之前会发生资源泄漏。1.很高兴知道,没有内置的方式连接任何线程。2.Zombies,请参阅手册页的引文:“如果无法使用可连接的线程(即未分离的线程)进行连接,则会生成一个“zombie线程”。避免这样做,因为每个僵尸线程都会消耗一些系统资源,并且当积累了足够多的僵尸线程时,就不可能再创建新线程(或进程)。'2注释。1.很高兴知道,没有内置的方式连接任何线程。2.Zombies,请参阅手册页的引文:“如果无法使用可连接的线程(即未分离的线程)进行连接,则会生成一个“zombie线程”。避免这样做,因为每个僵尸线程都会消耗一些系统资源,并且当积累了足够多的僵尸线程时,将无法再创建新线程(或进程)。'