Linux系统编程day4知识点总结回顾1
1.守护进程
创建一个会话,等于创建一个守护进程
会长就是一个守护进程
1.1 创建一个守护进程代码示例
1.2 创建一个守护进程模型
1.2.1 注册捕捉信号
1.2.2 核心操作代码
2.主线程和子线程
2.1 主线程和子线程的基本概念
2.2 主线程和子线程共享的与不共享的部分
2.3 多线程和多进程区别
2.4 补充知识点
指针函数:代表函数的返回值是一个指针
函数指针:需要指向一个函数的地址,(大多时候 与 回调函数相关)
3 创建线程
3.1 创建线程函数- pthread-create()
3.2 如何创建子线程代码示例
3.2.1 上述代码存在的问题:
pcb同时竞争资源,子线程没有抢过父线程,当父线程运行时结束时,子线程消失了。且父子线程用的同一个地址空间,因此子线程还没有执行就消失了。
解决办法: 父进程设置
sleep(2) //睡两秒钟
3.3 gcc 编译的时候需要注意的点
需要在后面加 -lpthread 文件
-l 指定库的名字
-L 指定库的路径
3.4 在分别打印5个线程的id时,出现的问题
传出的地址,是不变的。但当抢夺cpu资源时会出现问题
3.4.1 有问题代码
3.4.2 问题分析
3.4.3 改进之后代码
2019/3/5 胡云层 于南京