嵌入式 解决线程使用sleep或usleep等函数导致整个进程睡眠的问题

本文探讨了如何解决在嵌入式系统中,线程调用sleep或usleep函数导致整个进程进入睡眠状态的问题。通过获取当前时间的秒数并使用特定的函数接口,可以实现线程级的定时,避免影响到进程的正常运行。
摘要由CSDN通过智能技术生成

解决线程使用sleep或usleep等函数导致整个进程睡眠的问题:

获取当前时间的秒数

/*
	author : kj
	time : 2013-12-06 21:36
	instruction:
	get the num of the current seconds
	
*/

int get_current_time_second(void)
{
	struct tm *tmnow;
	struct timeval tv;
	gettimeofday(&tv,NULL);
	tmnow = localtime(&tv.tv_sec);
	return tv.tv_sec;
}


 

使用下面的函数接口完成替换线程中sleep计时

/*
	author : kj
	time : 2013-12-06 21:42
	function :
	done the function of time interval in separate thread
	
*/
int pthread_count_second(int time_interval)
{
	int current_seconds = 0;
	int execl_seconds =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值