Linux 怎么查看进程中线程的名字

Linux 怎么查看进程中线程的名字,第1张

ps命令用于查看系统中的进程状态,格式为:“ps [参数]”,同样搭配的参数如下:

当您第一次执行这个命令时估计要惊呆下,这么多输出值怎么看的过来?其实平常我们会将ps命令与管道符来结合使用,用于来抓取到某个指定服务进程所对应的PID号码,而常见的ps命令参数包括有:

参数 作用

-a 显示所有的进程(包括其他用户的)

-u 用户以及其他详细信息

-x 显示没有控制终端的进程

姓名:王央京    学号:18050100052   学院:电子工程学院

转自:https://blogcsdnnet/qq_22847457/article/details/89371217

嵌牛导读本文介绍了Linux线程的相关信息

嵌牛鼻子Linux线程

嵌牛提问在了解Linux系统后,能否具体介绍线程的概念?

嵌牛正文

类Unix系统中,早期是没有“线程”概念的,80年代才引入,借助进程机制实现出了线程的概念。因此在这类系统中,进程和线程关系密切。一个进程可以有多个线程,这个进程本身也叫做线程只不过是主线程。通常主线程分配任务给子线程做。程序设计时候就可以某一时刻不止做一件事情,每一个线程处理各自独立的任务。

多个线程可以访问相同的存储地址空间和文件描述符。同一进程内的线程共享以下数据:全局内存、进程指令、打开的文件、信号处理函数和信号处置、当前工作目录、用户ID和用户组ID、大多数数据。每个线程有各自的线程ID、寄存器集合(包括程序计数器和栈指针)、栈、errono、信号掩码、优先级。

线程的优点有提高程序并发性、开销小和数据通信、共享数据方便等。线程的缺点有库函数不稳定、调试编写困难、gdb不支持、对信号支持不好等。除此之外,多线程内如果其中一个线程出现了 除0、野指针 等问题会造成该线程崩溃,进而导致整个进程终止。同时,线程是进程的执行分支,线程出异常,就类似进程出异常,进而触发信号机制,终止进程,进程终止,该进程内的所有线程也就随即退出。

从上述分析来看,线程的优点相对突出,缺点均不是硬伤。Linux下由于实现方法导致进程、线程差别不是很大。

线程有一套完整的与其有关的函数库调用,它们中的绝大多数函数名都以pthread_开头。为了使用这些函数库调用,我们必须定义宏_REENTRANT,在程序中包含头文件pthreadh,并且在编译程序时需要用选项-lpthread来链接线程库。其中常用的函数库如下:

1  pthread_self函数获取线程ID,其作用对应进程中getpid()函数。

2  pthread_create函数创建一个新线程,其作用对应进程中fork()函数。

3  pthread_exit函数将单个线程退出,其作用对应进程中exit()函数

4  pthread_join函数阻塞等待线程退出,获取线程退出状态其作用,对应进程中waitpid()函数。

5  pthread_cancel函数杀死(取消)线程其作用,对应进程中kill()函数。

6  pthread_detach函数实现线程分离。

对于Linux,其实他是不存在线程这一说的,只有进程,如果非要说线程的话 , 你可以pstree -c|grep 你想要的进程的线程 比如nginx的: ps -ef|grep nginx 可以看到Nginx的所有进程 pstree -c |grep nginx 可以看到对应的线程

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12157009.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存