linux线程学习笔记

博客介绍了线程的优缺点及编程要点。优点包括可同时处理多事、改善性能、切换开销小;缺点有需仔细设计、调试困难、大量计算分两部分不提速。编程方面,介绍了头文件包含及几个关键函数的作用和参数设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

线程的优点

1.有些情况下需要程序同时处理多个事情,因此需要多个线程;

2.分离成多个线程,可以改善程序执行的性能;

3.线程见的切换需要操作系统做的工作以及对资源的需求要小于进程

线程的缺点

1.需要仔细的设计;

2.调试苦难;

3.将大量计算分为两个部分,并不会提高计算的速度;

线程编程

1. 需要 #include <pthread.h>;

2.int pthread_create(pthread *thread, pthread_attr_ *attr, void *(start_routine)(void), void *arg);

  • ① 它的作用是创建一个新线程;
  • ② 第一个参数是指向pthread_t类型数据的指针。线程被创建时,这个指针指向的变量中将被写入一个标识符,我们用该标识符来引用新线程;
  • ③ 第二个参数用于设置线程的属性。一般不需要特殊的属性,所以只需设置该参数为NULL
  • ④ 最后两个参数分别告诉线程将要启动执行的参数和传递给该函数的参数;

3.void pthread_exit(void retval);它的作用是终止调用它的线程并返回一个指向某个对象的指针,注意这个指针绝对不能指向局部变量;

4.int pthread_join(pthread_t th, void **thread_return);它的作用等价于进程中用来收集子进程信息的wait函数;

  • (1)第一个参数指定了将要等待的线程,线程通过pthread_create返回的标识符指定;
  • (2)第二个参数是一个指针,它指向另一个指针,而后者指向线程的返回值;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值