在线等,linux,printf会导致线程阻塞?

shimeitang shimeitang 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
在项目开发时碰到这样一个比较奇怪的问题:应用的某个子线程中调用printf向debug串口输出log,当串口连接到PC的时候,没有问题,一旦串口线与PC串口断开,则在一定时间内,该子线程会阻塞,但只要串口线一连接上PC,阻塞解除。初步估计可能是因为printf导致buffer满了以后阻塞此调用,因为printf输出内容很多时,很快就阻塞,而printf内容较少时,这个时间要长一些。 这里我只是猜测,请教下论坛里的达人,有谁知道原因,谢谢,在线等~~~
...全文

相关推荐

linux创建线程之pthread_create的具体使用

pthread_create函数 函数简介   pthread_create是UNIX环境创建线程函数 头文件   #include 函数声明   int pthread_create(pthread_t *restrict tidp,const pthread_attr_t *restrict_attr,void*(*start_rtn)(void*),void *restrict arg); 返回值   若成功则返回0,否则返回出错编号 参数   第一个参数为指向线程标识符的指针。   第二个参数用来设置线程属性。   第三个参数是线程运行函数的地址。   最后一个参

weixin_38711778

Linux下的多线程编程实例解析

主要介绍了Linux下的多线程编程实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

weixin_38678796

linux线程同步

介绍了linux线程同步的所有方式,包括互斥、自旋、信号量、条件变量等技术

zhangweictwt

[经典]linux线程编程-线程间通信(1).

[经典]linux线程编程-线程间通信(1).

纳兰萝卜

Linux下C多线程编程

Linux系统下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a。顺便说一下,Linux下pthread的实现是通过系统调用clone()来实现的。clone()是Linux所特有的系统调用,它的使用方式类似fork,关于clone()的详细情况,有兴趣的读者可以去查看有关文档说明。下面我们展示一个最简单的多线程程序example1.c。

叫我小姐姐
评论 51
收藏 已收藏
分享
返回顶部