Articles of 睡眠

睡在某些数字永远持续在Linux bash

我在Ubuntu 13.04中编写了一个bash脚本,它需要睡眠特定秒数的参数。 我已经确定睡眠允许在文档中查找浮点数字: 与大多数需要NUMBER的实现不同,这里NUMBER可能是一个任意的浮点数。 事实上,它适用于某些价值。 例如,对于“0.1”,“0.01”,“0.02”,“0.03”或“0.4”是可以的,但对于诸如“0.04”或“0.05”等其他值,则永远持续。 我的意思是,这将工作: sleep 0.03 …但这将永远持续下去: sleep 0.04 有人知道为什么吗? 谢谢!

在等待队列中唤醒进程

我正在编写一个Linux内核模块。 有两个进程A,B和两个等待队列WQA和WQB。 目前stream程A正在WQA上睡觉。 当B在WQB上睡觉的时候,我想让A被唤醒,这样当A开始时,B已经在WQB上等待了。 我怎么能自动唤醒A,并把WQB?

Linuxmultithreading,在同一进程中继续运行其他线程的同时暂停一个线程

我无法find适当的解决scheme来解决我的问题。 如果我在一个进程中有多个线程。 我想在同一个进程中运行其他线程时,只有一个线程进入hibernate状态,是否有任何预定义的语法,或者是否需要执行自己的实现(睡眠)? 理想情况下,我想从一个线程发送指示到另一个线程,当它是睡觉的时间。 编辑(2015-08-24)我有两个主线程,一个是通过networking发送数据,另一个是从networking接收数据。 除了抖动之外,接收线程还会进行validation和validation以及某些文件pipe理,这些文件pipe理会及时导致它拖到后面。 我喜欢做的是给发送者添加一个微睡眠的东西,这样接收者就可以赶上。 在这种情况下,sched_yield()将不起作用,因为硬件有一个多核CPU,核心数超过40个。

用特定文本运行“虚拟”后台命令

我正在寻找一个bash命令,我可以在后台运行一段时间(60秒),并且该命令将包含一个特定的文本string,我可以grep出ps命令。 恐怕我不能释放一个“虚拟”脚本,所以它必须是一个一行命令。 我试过了 echo "textneeded">/dev/null && sleep 60 & 但是,当然,我唯一能想到的是睡眠,因为回声一闪而过。 (其原因是将另一个脚本放在“testing”模式下,所以它不会创buildsubprocess,但是确保没有运行这些进程的其他function仍然可以find某些东西,因此等待。在一个bash脚本里。)

一个进程的信号如何影响其子线程?

大师,我有2个与Linuxfunction的问题: 睡觉 据我所知,睡眠中的任何信号都会被其发送过程中断。 这是正确的吗? 还是睡觉 如果我在这个过程中创build了多个线程,并且在线程中插入了睡眠函数,那么如果我将信号发送到进程中,睡眠是否会中断? 顺便说一句,如果我发送一个信号的进程,当进程得到的信号,将它发送到其子线程? 感谢您的答案

持续唤醒和睡眠在Linux上最小的电力使用情况?

我想用纯粹的linux电脑来收集rss feed,但是想尽可能地减less电力的使用。 大概我会创造一些cron的工作,使其进入和退出睡眠模式,或有更好的方法来解决这个问题吗?

减less程序的sleep()函数

我有一个为Linux开发的二进制程序,它从服务器的networkingstream中读取行。 它的通信encryption方式会花费我太多的时间,所以我不能重写它。 在输出每行之后,程序调用nanosleep(100000000) (我使用strace发现这个)然而,当服务器快速连续发送多行时,实际的stream和输出之间有很大的延迟。 由于我没有程序的源代码,我的问题是:有没有办法来减less这个软件的睡眠时间? “加速”呢? 作为参考,该程序是Punkbuster的PBUcon

睡眠()行为在C ..?

可能重复: 为什么printf在调用之后不刷新,除非换行符在格式化string中? 我试图在论坛上回答一些问题,我遇到了相当有趣的事情。 这里是代码: int main() { int print_val = -1; while(1) { printf("%d \n", ++print_val); sleep(1); } } 这工作完美。 现在乐趣进入..只要将第7行改为printf("%d ", ++print_val); (只是删除换行!) 现在没有输出。 那么任何一个人都可以帮我理解sleep()函数的行为。 我认为有必要看sleep()而不是printf(),因为我试图用fprintf()和putc()来replace它,只给出相同的输出。 我已经尝试了32位Ubuntu上的这个代码以及在虚拟机中的32位Ubuntu。 谢谢阿多恩

当进程调用睡眠函数时,它会发出一个信号吗?

我在程序中派生一个进程,这个进程调用一个exec()函数,然后这个subprocess调用sleep()函数。 我想知道sleep()函数是否发送父类可以检测到的某种信号,如果是,它会发送什么types的信号?

Linux:如何杀死睡眠

更多的概念性问题。 如果我写一个类似的bash脚本 control_c() { echo goodbye exit #$ } trap control_c SIGINT while true do sleep 10 #user wants to kill process here. done 当睡眠10运行时,control + c将不会退出。 是否因为linux睡眠忽略了SIGINT? 有没有办法来规避这一点,并让用户能够Ctrl + C的睡眠?