请教一下线程中延时3秒左右,用sleep(3000)可靠吗? [问题点数:20分,结帖人learning8899]

Bbs3
本版专家分:707
结帖率 98.64%
Bbs7
本版专家分:14999
Bbs1
本版专家分:3
Bbs9
本版专家分:50645
Blank
红花 2018年11月 Delphi大版内专家分月排行榜第一
2018年5月 Delphi大版内专家分月排行榜第一
2018年2月 Delphi大版内专家分月排行榜第一
2018年1月 Delphi大版内专家分月排行榜第一
2017年12月 Delphi大版内专家分月排行榜第一
2017年8月 Delphi大版内专家分月排行榜第一
2017年7月 Delphi大版内专家分月排行榜第一
2017年5月 Delphi大版内专家分月排行榜第一
2017年3月 Delphi大版内专家分月排行榜第一
2017年2月 Delphi大版内专家分月排行榜第一
2016年12月 Delphi大版内专家分月排行榜第一
2016年11月 Delphi大版内专家分月排行榜第一
2016年10月 Delphi大版内专家分月排行榜第一
2016年9月 Delphi大版内专家分月排行榜第一
2016年8月 Delphi大版内专家分月排行榜第一
2016年7月 Delphi大版内专家分月排行榜第一
2016年6月 Delphi大版内专家分月排行榜第一
2016年5月 Delphi大版内专家分月排行榜第一
2016年4月 Delphi大版内专家分月排行榜第一
2016年3月 Delphi大版内专家分月排行榜第一
2016年2月 Delphi大版内专家分月排行榜第一
2016年1月 Delphi大版内专家分月排行榜第一
2015年12月 Delphi大版内专家分月排行榜第一
2015年11月 Delphi大版内专家分月排行榜第一
2015年10月 Delphi大版内专家分月排行榜第一
2015年9月 Delphi大版内专家分月排行榜第一
2015年8月 Delphi大版内专家分月排行榜第一
2015年7月 Delphi大版内专家分月排行榜第一
2015年6月 Delphi大版内专家分月排行榜第一
2015年5月 Delphi大版内专家分月排行榜第一
2015年4月 Delphi大版内专家分月排行榜第一
2015年3月 Delphi大版内专家分月排行榜第一
2015年2月 Delphi大版内专家分月排行榜第一
2015年1月 Delphi大版内专家分月排行榜第一
2014年12月 Delphi大版内专家分月排行榜第一
2014年11月 Delphi大版内专家分月排行榜第一
Blank
黄花 2017年11月 Delphi大版内专家分月排行榜第二
2017年4月 Delphi大版内专家分月排行榜第二
2017年1月 Delphi大版内专家分月排行榜第二
2014年10月 Delphi大版内专家分月排行榜第二
2014年9月 Delphi大版内专家分月排行榜第二
Bbs5
本版专家分:2597
Bbs7
本版专家分:12163
Blank
红花 2009年11月 Delphi大版内专家分月排行榜第一
Blank
蓝花 2009年9月 Delphi大版内专家分月排行榜第三
Bbs5
本版专家分:4689
Blank
蓝花 2011年10月 Delphi大版内专家分月排行榜第三
Bbs7
本版专家分:11651
线程(3)--线程调度之sleep方法
<em>线程</em>的生命周期 <em>线程</em>的生命周期中的几种状态 新建 就绪(可以运行) 运行 阻塞(挂起) 死亡(结束) <em>线程</em>各个状态的转换图如下图所示: <em>线程</em>转换过程: 通过 new <em>线程</em>名 创建<em>线程</em>(新建状态)。启动start方法(就绪状态)后,然后执行start方法里面的内容(运行状态),此时,发生了一个暂停事件(使用<em>sleep</em>、join或是wait方法),导致<em>线程</em>暂停(阻塞状态),暂停过后,
Sleep中的线程接受ResetEvent事件吗?
Sleep中的<em>线程</em>接受ResetEvent事件吗?rn在考虑是不是这个原因导致的错误。rnrn<em>线程</em>基础比较差……rnrn谢谢各位高手……
线程中时间控件sleep
在主程序中有一个时间控件testTimer的onTimer中需要用到<em>sleep</em>(2000),但这样会影响到主程序中的其他时间控件,因此我想将testTimer放在<em>线程</em>中处理,请问在<em>线程</em>中怎样实现testTimer的onTimer事件testTimerTimer?rnTControl_opTh = class(TThread)rn privatern procedure testTimerTimer(Sender: TObject);rn protectedrn procedure Execute; override;rn publicrn constructor Create(aStr:String); virtual;rn end;rnconstructor TControl_opTh.Create(aStr: String);rnbeginrn inherited Create(false);rn FreeOnTerminate := false; rnend;rnprocedure TControl_opTh.Execute;rnbeginrn tryrn testTimer:=TTimer.Create(testTimer);rn testTimer.Enabled:=false;rn testTimer.Interval:=10000;rn testTimer.OnTimer:=testTimerTimer;rn exceptrn end;rnend;rnprocedure TControl_opTh.testTimerTimer(Sender: TObject);rnvarrnbeginrn <em>sleep</em>(2000);rnend;
nodejs中实现sleep功能,暂停几秒.
一 背景 在使用nodejs爬虫的时候,经常会遇到别人的网站对频率的反爬机制, 这个时候如果不做处理程序就会挂掉,重新启动也会继续被屏蔽.这个问题怎么解决呢, 我的想法就是程序暂停10分钟或者更长的时间,继续爬取. 二 方法 其实使用setTimeout就可以实现,只是nodejs异步已经很金字塔了,再加一层会更恐怖,所以 本文使用nodejs的第三方模块async来实现,asyn
Java两种延时——thread和timer
 在Java中有时候需要使程序暂停一点时间,称为<em>延时</em>。普通<em>延时</em>用Thread.<em>sleep</em>(int)方法,这很简单。它将当前<em>线程</em>挂起指定的毫秒数。如[java] view plain copy try   {   Thread.currentThread().<em>sleep</em>(1000);//毫秒   }   catch(Exception e){}     在这里需要解释<em>一下</em><em>线程</em>沉睡的时间。<em>sleep</em>(...
Java并发编程——线程池的使用(五)延时执行的线程池ScheduledExecutorService
一、ScheduledExecutorService的<em>延时</em>执行功能
关于多线程延时的问题
假设我开两个<em>线程</em> P1,P2 我在两个<em>线程</em>中各<em>延时</em>2秒。是否会造成实际各<em>延时</em>了4秒的结果?
新手求解线程延时问题
我想测试子<em>线程</em>和主<em>线程</em>之间的<em>延时</em>问题,简单的写了一个程序。界面如下: private void button1_Click(object sender, EventArgs e) { ThreadSt
线程中的Sleep()问题!
#include rn#include rnrnDWORD WINAPI Fun1Proc(rn LPVOID lpParameter // thread datarn);rnrnvoid main()rnrnHANDLE hThread1;rnhThread1=CreateThread(NULL,0,Fun1Proc,NULL,0,NULL);rnCloseHandle(hThread1);rnSleep(10);rncout<<
线程中的sleep
请问在<em>线程</em>中使用<em>sleep</em>是使整个程序都停下来了,还是只使这个<em>线程</em>停下来?本人需要一个只使<em>线程</em>停下来的函数,不影响其它<em>线程</em>。
sleep 延时 假死 问题!
可有更好的函数或方法 <em>延时</em>呀!rn假死很不好呀
延时等待中sleep()的问题
各位高手大家好,小弟<em>请教</em>以下一个问题:rn 我用udp发送多媒体数据包,因为我所发送的包要做成视频,所以在<em>线程</em>中我每发送完一个包就要等待一段时间(ms级),我用的是<em>sleep</em>()来等待时间,但是我发现好像不是很精确,rn比如所我计算出发完一个包后需要等待31ms,我用<em>sleep</em>(31)来等待,但是我不知道这个函数是否确切的等待了31ms,因为我在<em>sleep</em>前后用getTickCount()函数分别得出了一个时间值,这两个值相减是40msrn好像他多睡了好几毫秒,需要等待47毫秒的时候,减出来是50,一般都是整数rnrn我现在不知道是<em>sleep</em>()函数睡眠时间不够精确,还是我用getTickCount()函数计算出来的时间差不精确,不知道我上面的所清楚没有。呵呵。rnrn请问各位高手是否还有什么好的方法能“睡眠”精确的时间段,或是有什么建议。rn先谢谢大家~!rn预祝各位圣诞快乐^_^
sleep 函数延时问题
我现在在写的是一个扑克牌游戏,在实现人机对战出牌时候需要用到<em>延时</em>操作的时候出现了问题,希望大家帮忙咯rn我本意是想 在自己出一张牌后 各电脑玩家能够相继间隔一s 然后出牌,代码如下:rn[code=Java]rn rn // 用来实现电脑间隔一秒出牌rn public void playWithComputer ()rn rn for(int i = 1 ; i ))rn rn this.setLocation(473,354); // 把牌放到相应位置rn main.playWithComputer() ;rn rn rn rnrn[/code]rn但实际产生的情况是, 当点击按钮 “出牌”后,过了三面后,全部的牌一起放到相应位置。。。rn自己感觉可能是什么刷新的问题。。但是不知道到底怎么回事,还有就是要怎么修改。。
线程延时启动dialog
主<em>线程</em>中<em>延时</em>启动dialog 错误的: new Thread(new Runnable() { public void run() { try { Thread.<em>sleep</em>(5000); showToMemberDialog();
多个线程中的怎么精确延时,高手都来帮我讨论一下
多个<em>线程</em>好像<em>延时</em>有点麻烦! 好每个<em>线程</em> 在执行Delay(<em>3000</em>) 时都要用CPU时间量 做不到同时都<em>延时</em>3毫秒的样子。。 比方一个<em>线程</em>执行时间是3个毫秒,如果3个<em>线程</em>同步执行在系统调度下也就是3点
线程延时操作的实现
一般有两种方式,参考http://blog.csdn.net/zmhinzaghi/article/details/5837735的资料给出了<em>一下</em>说明 一种是用Thread.<em>sleep</em>(int)方法,这很简单。它将当前<em>线程</em>挂起指定的毫秒数。如 try { Thread.currentThread().<em>sleep</em>(1000);//毫秒 } catch(Exception e){}
C++ 线程里面延时1秒的技巧
1、while(iTimer &amp;lt; 1000)        {            if (gl_ERR_LEVEL == EL_HIGH)    //条件判断为退出<em>线程</em>的信号                AfxEndThread(1);                        iTimer += 100;            Sleep(100);        }...
用Sleep做延时等待好吗?
RT
关于用sleep延时出现的问题
在OnintDialog中我想要作一个<em>延时</em>的操作,于是我写了下面几句话rnrnfor(i=0;i<20000;i++)rn rn Sleep(1);rn rnrn 上面我大约<em>延时</em>了20秒,但是不知道为什么我加上这一句话以后我的软件启动以后会死掉,这个是什么原因??rnrn 用Sleep作<em>延时</em>会使得软件死机吗??应该不会吧。那我这句话加上后为什么 软件会死呢??有人可以跟我分析<em>一下</em>这是什么原因吗??
线程里用sleep问题
请问:在windowns里,程序中有很多<em>线程</em>,在其中一个<em>线程</em>里用到<em>sleep</em>,在执行<em>sleep</em>过程中,会不会影响其它的<em>线程</em>(即其它的<em>线程</em>是否会停下来)rn
Sleep与线程
通过WaitforSigleObject()取得对象;rn后用Sleep.rn如rnrnWaitforSigleObject(**);rnSleep(10);rnrnrn即然我取得了得了对象,为什么用Sleep(10);程序又会执行别的<em>线程</em>,rn就像我进了拿着匙钥房间里,为什么别的人还可以进入房间。rn各位,可不可以打个比方,说<em>一下</em>为什么呢?
线程sleep()还是用Timer
比较它们的优劣。rn前提是,我注定要开几个<em>线程</em>,反正开了也就开了,看看能不能把Timer省了去。
Android 多线程延迟(sleep)
new Thread(new Runnable(){ @Override public void run(){ int count = 0; while (true) { c
关于多线程与代码执行延迟的问题
最近写了个程序,需要用到多<em>线程</em>。 每个<em>线程</em>的代码执行需要按照需求延迟,主<em>线程</em>每次添加一个<em>线程</em>时,<em>线程</em>函数要能够被赋多个参数。 我想<em>请教</em><em>一下</em>各位大大: 1. 声明th1 = New Thread(New
Android主线程延时处理
Android对UI主<em>线程</em>开启了实时监听,Activity Manager和WindowManager系统服务一旦监听到主<em>线程</em>超过10秒没有响应操作,就会抛出ANR,所以,在UI主<em>线程</em>中不能直接调用Thread.<em>sleep</em>方法去<em>延时</em>,超过10秒就根本不会执行后面的操作,当有必要在主<em>线程</em>中增加<em>延时</em>处理时,可以通过开启子<em>线程</em>的方法:new Thread(new Runnable(){
Java中延迟建立新线程sleep代码片段
try { Thread.<em>sleep</em>(500); //System.out.println(&amp;quot;love&amp;quot;); } catch (InterruptedException e) { }
线程之延迟操作
有三个办法: [NSThread <em>sleep</em>ForTimeInterval:]; 但是这个方法并不好,因为它就是相当于睡眠了给定的时间不走了,所以会卡住当前<em>线程</em>。 performSelector:withObject:afterDelay: 这个方法直接在主<em>线程</em>中操作,但是不会卡住<em>线程</em>,程序依次执行,等过了指定延迟时间再回来执行相应操作。 diapatch_after(dispatch_time
延时线程
本视频致力于打造最适合Python初学者的入门视频,站在初学者角度,从零开始、由浅入深,以朴实生动的语言来阐述复杂的问题,其中列举了大量现实中的例子进行讲解,真正做到通俗易懂。 本视频涵盖Python基础语言、流程控制、数据结构、函数、模块与包、面向对象、文件、异常等核心知识点。当学完一个章节的知识点,通过每章实用性强的案例,将所学知识综合运用到实际开发中,积累项目开发经验。
线程中Sleep()、Wait()区别
<em>线程</em>: Sleep()、Wait():调用某个对象的wait()方法,相当于让当前<em>线程</em>交出此对象的锁monitor,然后进入等待状态,等待后续再次获得此对象的锁(Thread类中的<em>sleep</em>方法使当前<em>线程</em>暂停执行一段时间,从而让其他<em>线程</em>有机会继续执行,但它并不释放对象锁); Condition是在java 1.5中才出现的,它用来替代传统的Object的wait()、notify()实
线程中的sleep和interrupt,求教
如果一个<em>线程</em>,调用了<em>sleep</em>, 那么它就会进入block 状态,如果期间调用了interrupt,就会抛出个异常。rn那么是不是说,如果出现了异常,这个<em>线程</em>是不是肯定就终止了?rn因为一般情况run()是这样写的rnrun()rn tryXXXrn catch()rnrn这时如果出现异常,程序就跳到catch部分了,那么执行完catch,run也就执行完了,这样整个<em>线程</em>就结束了。rnrn有没有这样的可能rnrun()rnrnwhile(true)rn tryXXXrn catch()rnrnrn在catch后,仍然不退出run?
线程中的wait()和Sleep()方法
/** * <em>线程</em>间通信----也就是当达成某种条件的时候就开始二者之间调用, * 但是调用的话他们之间的关系是什么呢? * wait方法---<em>线程</em>挂起 * notify方法--<em>线程</em>唤醒 * <em>sleep</em>方法---<em>线程</em>休眠(相当于一个定时任务) */ public class ThreadA implements Runnable { //锁对象 private Ob...
sleep中的线程如何终止?
我有一个<em>线程</em>,发送完数据后<em>sleep</em>一分钟然后再发,相当于一个心跳消息。我需要在连接异常时终止这个<em>线程</em>,我现在是用abort中止的,但是我发现<em>线程</em>虽然调用了abort但是它还是跑去发消息了,这是怎么回事呢?该怎么终止掉<em>sleep</em>状态的<em>线程</em>啊?
线程延时执行
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically f
延时执行的两种方法(在线程中)
在主<em>线程</em>可以执行.     主<em>线程</em>和子<em>线程</em>的区别:     每一条<em>线程</em>都有一个"运行循环".默认:主<em>线程</em>的运行循环是开启的,子<em>线程</em>的运行循环是关闭的.     有些方法是需要运行循环来执行的:(UI操作/定时器)     开启子<em>线程</em>的运行循环.          [[NSRunLoop currentRunLoop] run]; 只能开,关不了.
线程延时
在进行多<em>线程</em>编程时,经常需要进行一些<em>线程</em>的<em>延时</em>,而对于Sleep 是不准确的,所以需要获取震片时间钟进行<em>延时</em>。代码如下: ULONG GetTimeDis(struct tm first, struct tm second) { return abs((first.tm_hour * 3600 + first.tm_min * 60 + first.tm_sec)
线程延时,使用postDelayed
主<em>线程</em>上<em>延时</em>,使用postDelayed
两个小故事:吞吐量与延迟,信号量与互斥锁
吞吐量和延迟 吞吐量是指在给定时间里能完成的工作量。延迟是指一个工作量从头到尾做完所用的时间。 吞吐量体现了系统对任务群所能处理的最大值,例如每秒最多能处理的网络报文数,一个系统的最大带宽数等。 延迟体现了单独任务处理的速度,也反映了系统的响应时间,如CPU指令延迟、网络延迟等。 通常对系统的衡量包括吞吐量和延
线程sleep()和wait()的区别
<em>sleep</em>()和wait()的区别 <em>sleep</em>() <em>sleep</em>()方法是Thread的静态方法,提供了两种<em>sleep</em>的方式可让我们更灵活的控制,目的是为了使<em>线程</em>睡眠一段时间,自然醒后继续执行,不存在继续竞争,因为期间并没有释放同步锁. public static native void <em>sleep</em>(long millis) throws InterruptedException; pub...
sleep nanosleep select延时问题
[code=C/C++]rnint my_uint_<em>sleep</em> (double <em>sleep</em>_time)rn rn struct timespec tv; rn tv.tv_sec = (time_t) <em>sleep</em>_time; rn tv.tv_nsec = (long) ((<em>sleep</em>_time - tv.tv_sec) * 1e+9); rn while (1)rn rn printf("tv.tv_sec = %d \n",tv.tv_sec);rn printf("tv.tv_nsec = %d \n",tv.tv_nsec);rn rn int rval = nano<em>sleep</em> (&tv, &tv); rn printf("rval = %d ; nano<em>sleep</em> errno = %d \n",rval,errno);rn rn if (rval == 0) rn return 0; rn else if (errno == EINTR) rn rn printf("Interruped \n");rn continue; rn rn else rn return rval; rn rn return 0;rnrn[/code]rn当调用: my_uint_<em>sleep</em>(5.1f); 的时候,errno 一直都是 516 (#define ERESTART_RESTARTBLOCK 516 /* restart by calling sys_restart_syscall */) 在程序的其他部分用到了定时器,所以nano<em>sleep</em>这个函数理论上会被中断而进入if (errno == EINTR)这个分支语句,实际情况确实返回 516 错误,请有碰到类似情况的朋友解答,谢谢!!!!!!
如何实现如sleep(3000),停止工作3秒的函数?
如何实现如<em>sleep</em>(<em>3000</em>),停止工作3秒的函数?不是 settimeout
线程里面不能使用Sleep吗?
我新创建了一个<em>线程</em>,但是在里面使用Sleep函数的时候总是说那是没有声明的变量,我要怎么办啊
线程sleep后可以立即终止吗
不用TerminateThread函数,毕竟有隐患,请问还有别的方法吗?
线程里面使用sleep函数是否会引起整个的进程都睡眠
看到有些文章里面写到:<em>sleep</em>函数是和进程相关的,所以当在<em>线程</em>里面使用<em>sleep</em>函数会引起整个的进程和其他的<em>线程</em>睡眠。但是我写了一个测试程序,在fedora5和fedora9下面运行好像<em>sleep</em>函
线程sleep怎么会影响到主程序sleep呢???
我是这样用的: void JudegAlert(void *) { .... <em>sleep</em>(50); } int main() { ...... pthread_create(&pthrd, NULL,
Delphi中使用TThread类实现多线程
之前写的多<em>线程</em>程序都是用api直接做的,没有用过delphi自带Tthread类,刚才看了下,写了个demo,希望对新手有帮助。。。 窗体单元: unit main; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,myTh
java中线程睡眠sleep()方法介绍
1、方法介绍    <em>sleep</em>(long millis)  <em>线程</em>睡眠 millis 毫秒    <em>sleep</em>(long millis, int nanos)  <em>线程</em>睡眠 millis 毫秒 + nanos 纳秒2、如何调用<em>sleep</em>    因为<em>sleep</em>()是静态方法,所以最好的调用方法就是 Thread.<em>sleep</em>()。3、在哪里写<em>sleep</em>更合理?    <em>线程</em>的<em>sleep</em>方法应该写在<em>线程</em>的run...
Sleep函数会阻塞所有线程
是这样的,一个单文档程序,响应一个菜单选项,创建了一个用户界面<em>线程</em>(基于CWinThread),在InitInstance()里创建并显示了一个对话框,在这个对话框里面有一个按钮,响应函数里面是rn for(int count=0;count<10;count++)rn rn Sleep(50000); //<em>延时</em>一个心跳周期rn if(!m_HeartGram) rn rn if(!m_HostRequest) rn rn ; rn rn else rn rn count=0;rn rn rn else rn rn m_StandBy=TRUE; rn m_SysState=2;rnrn rnrn rn if(count==10)rn rn m_Host=TRUE; rn m_SysState=1;rn rn单击按钮后对话框就进入了<em>sleep</em>函数,这时对话框出现“无响应”是正常的,但是为什么单文档也无法响应鼠标了啊?Sleep函数是阻塞所有的<em>线程</em>吗?
sleep会使线程放弃锁吗
When a thread has yielded as a result of yield(), it releases its locks.rn rnWhen a thread is <em>sleep</em>ing as a result of <em>sleep</em>(), it releases its locks.rnrn这两人句话有什么不对?rn对于<em>sleep</em>,api说不会放弃监视器,似乎是指锁,但我做了个例子,发现还是会放弃啊。到底怎么回事。rnrn[code=Java]public class Threads4 rn public static void main(String[] args) throws Exceptionrn class Mythread implements Runnablern Threads4 t4;rn Mythread(Threads4 t4) rn this.t4=t4;rn rnrn public void run() rn System.out.println("start "+Thread.currentThread().getId());rn try rn t4.go();rn catch (Exception e) rn e.printStackTrace();rn rnrn System.out.println("end "+Thread.currentThread().getId());rn rn rn Threads4 t4=new Threads4();rnrn Thread t1=new Thread(new Mythread(t4));rn Thread t2=new Thread(new Mythread(t4));rn t1.start();rn Thread.<em>sleep</em>(2000);rn t2.start();rnrnrn rnrn public synchronized void go()rn System.out.println(Thread.currentThread().getId());rn try rn Thread.<em>sleep</em>(5000);rn catch (InterruptedException e) rn e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.rn rn rnrn[/code]
大神们 sleep()只能用于线程
比如用在for()里 每次循环都暂停<em>一下</em>可以吗 这个方法在那个包里??
关于在线程延时的问题
在进程的某一个<em>线程</em>中用 Sleep(1L) <em>延时</em>,请问在<em>延时</em>的过程中rn 该进程的其他<em>线程</em>是否还在运行?rn
Java之线程(sleep,线程名)
参考资料 1 Java<em>线程</em>:创建与启动 [url]http://lavasoft.blog.51cto.com/62575/99151[/url] [b]运用场景:[/b] [color=red]在使用很多<em>线程</em>的时候,要区分每个<em>线程</em>的标记,就要加上你自定义<em>线程</em>的名字,<em>sleep</em>也经常用,比如你在发送邮件或者执行其它任务的时候,想要每间隔多少秒执行一次,<em>sleep</em>就会用上[/color] :...
sleep( ) 和 wait( ) 的这 5 个区别
<em>sleep</em>(休眠) 和 wait(等待) 方法是 Java 多<em>线程</em>中常用的两个方法,它们有什么区别及一些该注意的地方有哪些呢?下面给大家一一分解。 区别1:使用限制 使用 <em>sleep</em> 方法可以让让当前<em>线程</em>休眠,时间一到当前<em>线程</em>继续往下执行,在任何地方都能使用,但需要捕获 InterruptedException 异常。 try {     Thread.<em>sleep</em>(<em>3000</em>L); } ca...
线程sleep()方法的简单使用
<em>线程</em>的<em>sleep</em>方法签名位:  public static void <em>sleep</em>(long millis) throws InterruptException,  是静态方法,使目前正在执行的<em>线程</em>休眠millis毫秒 package com.demo; class MyThread implements Runnable{ public void run(){ for(int i =
TimeUnit 使用
TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段 主要作用 时间颗粒度转换 <em>延时</em>   常用的颗粒度 1 2 3 4 5 TimeUnit.DAYS          //天 TimeUnit.HOURS         //小时 TimeUnit.MINUTES...
线程_几种定时器的写法
1 :固定时间后执行一次任务:1000毫秒后执行任务(只执行一次) 2: 5000毫秒后,执行任务,以后每隔1000毫秒再执行一次任务(无限执行) 3:交替再生:任务2秒4秒交替的执行(无限执行), 4: 创建两个循环交替任务:2秒后,A任务执行。 A任务里面创建一个B任务4秒后执行,B任务里面又创建一个A任务2秒后执行,如此往复。                 
睡眠持续几毫秒
-
线程中进行精确延时
程序可能有多个<em>线程</em>T1,T2,T3rnT1rnrn /*******要求标记段内的动作必须一次完成,请问怎么做??***********/rn WorkSum(...) ;rn DelayAA(1000);rn /*****************/rnrn因为操作系统可能在调度时将WorkSum分配在第n个时间片上,将DelayAA(1000)分配在第n+i个时间片上.rn而我要求WorkSum与DelayAA一旦执行必须全部执行后才能将时间片分给其他<em>线程</em>,否则不要执行.
从头认识java-18.2 基本的线程机制(3)-线程的返回与sleep
这一章节我们来讨论<em>一下</em><em>线程</em>的返回与<em>sleep</em>。1.<em>线程</em>的返回package com.ray.ch17; import java.util.Random; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.Exe
一下,在一个线程里Sleep(***)会不会影响其他线程
问<em>一下</em>,在一个<em>线程</em>里Sleep(***)会不会影响其他<em>线程</em>?
请教线程sleep和suspend具体有什么区别?
这两个具体有什么区别啊?在有些地方我将<em>线程</em>suspend还是占有很高的cpu,而换成<em>sleep</em>就不会占用;rn有些地方我随便用哪个都没事 rn有人知道为什么吗?
定时运行线程(用OnTime,还是Sleep)
程序每小时要运行一个<em>线程</em>来处理一些数据, 考虑两种方法:rn1. 相应WM_ONTIME消息, 在相应函数中开始一个<em>线程</em>rn2. 程序执行起来就开启处理<em>线程</em>, 执行完使用Sleep(), 使程序睡眠1小时.rn这两中方法那种好, 为什么?rn目前我采用的是第一种, 因为我发现,Sleep()需要考虑<em>线程</em>执行时间, 不然会造成定时不准.rn而WM_ONTIME就比较好用, 定时也比较准.而且, 用相应windows消息的方式, 启动消息后,<em>线程</em>运行完正常退出, 而使用Sleep()对于<em>线程</em>结束比较难把握.rn现在我担心的是, 如果<em>线程</em>运行间隔时间变短, 比如5分钟运行一次, 会不会由于不断启动<em>线程</em>而带来问题.希望各位大侠帮助解答.
两个线程 怎样让其中一个休眠1秒
-
线程-线程休眠(sleep
1. <em>sleep</em>()介绍 <em>sleep</em>() 定义在Thread.java中。 <em>sleep</em>() 的作用是让当前<em>线程</em>休眠,即当前<em>线程</em>会从“运行状态”进入到“休眠(阻塞)状态”。<em>sleep</em>()会指定休眠时间,<em>线程</em>休眠的时间会大于/等于该休眠时间;在<em>线程</em>重新被唤醒时,它会由“阻塞状态”变成“就绪状态”,从而等待cpu的调度执行。 2. <em>sleep</em>()示例 下面通过一个简单示例演示<em>sleep</em>()的...
VB2010用Sleep的问题。。。。。。
Public Class Form1 Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Private Sub Butto
vb.net多线程造成窗体界面“假死”解决办法?
-
java异步延迟任务执行
今天遇到一个奇怪的需求:需要在某个操作后,延迟10min执行另一个操作。 一 新建<em>线程</em> 首先想到的方法便是新建一个<em>线程</em>完成此操作: 输出 看起来这个操作没有问题 ,但是现在项目中就有问题了。  这是阿里代码检查工具的提示。 试想<em>一下</em>,每次进行这种操作便新建<em>线程</em>是不可取的,如果这个操作执行多次,便会创建大量<em>线程</em>,对虚拟机运行造成巨大的压力。 二 使用<em>线程</em>池 输出结果 ...
Python 定时线程延时线程
import time import os import threading def go(): os.system("notepad") timethread=threading.Timer(5,go) #<em>延时</em><em>线程</em>,5秒以后执行go函数,执行一次, timethread.start()
线程sleep
[NSThread <em>sleep</em>ForTimeInterval:1];    
java线程sleep的使用)
<em>sleep</em>使<em>线程</em>进入休眠状态interrup()激活<em>线程</em>class Shop implements Runnable { Thread zhangWorker,wangWorker,boss; Shop() { boss=new Thread(this); zhangWorker=new Thread(boss); wangWorker=ne...
java线程休眠 sleep
创建一个实现runnable接口的类 并在run方法中调用 Thread.<em>sleep</em>(秒数) ,必须 try/catch class MyThread implements Runnable{ @Override public void run() { for (int i = 1; i &amp;lt;=15; i++) { System.out.println(Thread.currentT...
线程第八课——sleep方法
  这节课我们就讲一个方法,Thread.<em>sleep</em>(long millis)     首先补充一个知识点   public static void main(String[] args) {     System.out.println(Thread.currentThread().getName()); }   运行结果; main   可以看到其实main方法自启动了...
newScheduledThreadPool延时任务线程池,实现原理
Excutors的newScheduleThreadPool程序结构,我们在构造ThreadPoolExcute时,Queue队列使用了DelayedWorkQueue,这是一个可<em>延时</em>执行阻塞任务的队列,Delayed元素的一个无界阻塞队列,只有在延迟期满时才能从中提取元素。该队列的头部是延迟期满后保存时间最长的Delayed元素。如果延迟都还没有期满,则队列没有头部,并且poll将返回null。condition的定义Condition available = lock.newCondition();(n
Android延时执行的几种方法
开启新<em>线程</em>  new Thread(new Runnable(){        public void run(){            Thread.<em>sleep</em>(XXXX);            handler.sendMessage(); //告诉主<em>线程</em>执行任务        }    }).start  利用定时器 Timer
visual studio 中的Thread.Sleep(1)到底延时多少啊
以前用的T420电脑 Thread.Sleep(1)是<em>延时</em>了1ms。 现在换了个T480竟然 Thread.Sleep(1)是<em>延时</em>了15ms。 于是又换了个老掉牙8年前的XP电脑,也是15ms。 看这个讨论吧: https://bbs.csdn.net/topics/391983243?page=1   那么我现在想精确<em>延时</em>1到2个毫秒,咋整呢?   试了N多方法,估计5六种。都不...
如何让一个线程每10秒执行一次啊?
如何让一个<em>线程</em>每10秒执行一次啊?我写在什么地方,窗体的load事件里可以吗? 做一个在线显示功能,有人上线就即时显示,我想每10秒就刷新一次,怎么做,写在什么地方? private void onl
nodejs8.0+中实现sleep功能,暂停几秒.
nodejs8.0+中实现<em>sleep</em>功能,暂停几秒.
线程sleep的问题
代码如下:rn[code=C/C++]rn/* thread.h */rnrn#ifndef THREAD_Hrn#define THREAD_Hrnrn#include rn#include rnrn#define MAXTHREADNUM 50rn#define THREADNUM 1rnextern pthread_key_t p_key;rnrnvoid threadMain(void);rnrnrn#endifrn[/code]rn[code=C/C++]rn/* thread.cc */rnrn#include "thread.h"rn#include rnrnpthread_key_t p_key;rnrnvoid threadMain(void)rn int times=0;rn int *tid=(int *)pthread_getspecific(p_key);rn while(times++< 1 || number > MAXTHREADNUM)rn printf("thread number is incorrect");rn exit(-1); rn rnrn for(threadID=1;threadID,*tid);rn threadMain();rnrn[/code]rnrn创建的<em>线程</em>数为1,p_key的值为传给它的threadID(1),再把它传给tid,把thread.cc中的<em>sleep</em>(1)注释掉结果还正常的:rnthread 1 startsrnthread 1 cout 1 rnthread 1 cout 2 rnthread 1 cout 3 rnthread 1 cout 4 rnthread 1 cout 5 rnthread 1 cout 6 rnthread 1 cout 7 rnthread 1 cout 8 rnthread 1 cout 9 rnthread 1 cout 10 rnthread 1 end rnrnrn但是如果不注释,很莫名其妙的问题:rnthread 1 startsrnthread 1 cout 1 rnthread 2 cout 2 rnthread 2 cout 3 rnthread 2 cout 4 rnthread 2 cout 5 rnthread 2 cout 6 rnthread 2 cout 7 rnthread 2 cout 8 rnthread 2 cout 9 rnthread 2 cout 10 rnrn从第三行开始,*tid的值竟然变成了2。抓破了头都想不明白,请大家帮忙看看,谢谢!
C#线程sleep问题
需求是这样的,winform程序,轮播文本、视频、图片,播放文本时暂停5秒,接着播放视频,视频播放完成后,播放图片。rnrn如果在winformUI界面中编写所有代码,thread.<em>sleep</em>将会影响文本、视频、图片的显示rn如果文本、视频、图片分别使用<em>线程</em>,又有很多意想不到的问题rnrnwinform程序主窗体内有一个picturebox,一个Label,一个mediaplay播放器rnrn下面程序不能如预想的那样,顺序播放,顺序隐藏,求高手指点rnrn //锁住主程序rn lock (obj_main_main)rn rn //屏幕对应的节目元素列表rn List modelList = comm.programEleModel("P1");rnrn for (int jj = 0; jj < modelList.Count; jj++)rn rn //锁住循环内程序rn lock (obj_main)rn rn if (modelList[jj]._eletype.Equals("1"))rn rn //不为空播放文本rn if (!modelList[jj]._chartextmodel._content.Trim().Equals(""))rn rn Thread t2 = new Thread(showchartex_task);//处理文本的<em>线程</em>rn t2.Start();rn Thread.Sleep(10000);rn label1.Visible = false;//隐藏文本rn rn rnrn //判断是否视频rn if (modelList[jj]._eletype.Equals("2"))rn rn //pictureBox1.Controls.Clear();rn //不为空播放视频rn if (!modelList[jj].filepath.Trim().Equals(""))rn rn Thread t2 = new Thread(showvideo_task);//处理视频的<em>线程</em>rn t2.Start();rn Thread.Sleep(10000);rn axWindowsMediaPlayer1.Width = 300;//隐藏<em>线程</em>rn rn rnrn //判断是否图片rn if (modelList[jj]._eletype.Equals("3"))rn rn Thread t2 = new Thread(showpic_task);//处理图片的<em>线程</em>,将生成的图片add进pictureBox中rn t2.Start();rn Thread.Sleep(10000);rn pictureBox1.Controls.Clear();rn pictureBox1.Refresh();rn rn rn rn
线程里的SLEEP操作
进程1包含了<em>线程</em>1、2、3rn<em>线程</em>1内有<em>sleep</em>操作rn请问<em>sleep</em>操作是挂起<em>线程</em>1,还是整个进程都被挂起?
线程sleep(0)
话说,在<em>线程</em>中,调用<em>sleep</em>(0)可以释放cpu时间,让<em>线程</em>马上重新回到就绪队列而非等待队列,<em>sleep</em>(0)释放当前<em>线程</em>所剩余的时间片(如果有剩余的话),这样可以让操作系统切换其他<em>线程</em>来执行,提升效率。rn这个确实不错
线程 sleep 问题
<em>sleep</em>和yield都不具备同步语义,也就是说编译器在执行<em>sleep</em>或yield方法之前和之后,都没有强制要求同步本地缓存与主存的数据rn以下摘自JSL3.0rnIt is important to note that neither Thread.<em>sleep</em> nor Thread.yield havernany synchronization semantics. In particular, the compiler does not have to flushrnwrites cached in registers out to shared memory before a call to Thread.<em>sleep</em> orrnThread.yield, nor does the compiler have to reload values cached in registersrnafter a call to Thread.<em>sleep</em> or Thread.yield.rnFor example, in the following (broken) code fragment, assume that this.done is a non-volatilernboolean field:rn[code=Java]while (!this.done) rn Thread.<em>sleep</em>(1000); [/code]rnThe compiler is free to read the field this.done just once, and reuse the cached valuernin each execution of the loop. This would mean that the loop would never terminate, even ifrnanother thread changed the value of this.done.rnrnrn根据以上说明写了一段代码, 应该是停不了啊,但是3秒后<em>sleep</em>就停掉了,<em>请教</em>rnrn[code=Java]public class Test rnrn boolean flag = true;rnrn public static void main(String[] args) rn Test t =new Test();rn t.test();rn t.test2();rn rnrn void test()rn new Thread()rn @Overridern public void run() rn try rn <em>sleep</em>(<em>3000</em>);rn flag = false;rn catch (InterruptedException e) rn e.printStackTrace();rn rn ;rn .start();rn rn rn void test2() rn while (flag)rn try rn Thread.<em>sleep</em>(1000);rn System.out.println("xxxxx");rn catch (InterruptedException e) rn e.printStackTrace();rn rn rn rn[/code]rnrn
解决nodejs异步数据延迟 解决方案
回调还产生了很多问题,最严重的问题是callback hell回调地狱。 fs.readFile('/etc/password', function(err, data){ // do something fs.readFile('xxxx', function(err, data){ //do something fs.readFile(
JS延迟5秒加载方法
setTimeout( function(){ //add your code }, 5 * 1000 );//延迟5000毫米
JS实现延时3秒刷新
setTimeout(function (){ window.location.reload(); }, <em>3000</em>);  
Node.js实现基于Redis的延迟队列
Node.js实现基于Redis的延迟队列 写代码的过程中,偶尔会因为业务需求而用到延迟队列,经典场景如:订单的超时关闭,签到提醒等,之前一般选择现成的云服务,但这次本着学习的目的就尝试自己实现了一番。实现的指导思想来自有赞延迟队列设计这篇文章,对于延迟队列使用场景、作用不太清楚的朋友可以通过这篇文章补一补。 核心流程与设计理念照有赞的文章来,自己这篇文章主要讲实现的方式与过程中遇到的问题,所...
nodejs co-sleep 使用
co-<em>sleep</em> 可以在co 中模拟 <em>sleep</em> 的动作var co = require("co"); var <em>sleep</em> =require("co-<em>sleep</em>"); co(function * (){ console.log("hello world"); yield <em>sleep</em>(1000); console.log("<em>sleep</em> end"); }) console.lo
android 线程 sleep 的问题
写一个<em>线程</em>,是一个while死循环,在<em>线程</em>里面用了<em>sleep</em>(2000)方法rnrn但是实际的时间都会达不到效果rnrnrn比如上一个项目中,我写<em>sleep</em>(5000),实际只有1秒的样子rnrn现在我写<em>sleep</em>(1000),直接不休眠rnrnrnrn代码如下:rn[code=Java]rnboolean key=true;rnwhile(key)rnrn Log.d("","");rn <em>sleep</em>(2000);rnrn[/code]rnrnrnrn求解答为何,并且如何实现暂停rnrnrnrnrnrnrn还有,貌似我直接调用<em>线程</em>的stop方法也有问题,比如rn[code=Java]rnThread p = new Thread()rnrnrnrnp.start();rnrnif(p.isAlive())rnp.stop();rnrn[/code]rnrn求解答
线程控制与Sleep的问题
我在编写一个Oracle数据库处理程序,其功能由一个<em>线程</em>来完成.程序中有两个按钮,一个是定时刷新由Sleep(n)来让<em>线程</em>的定时运行;令一个是即时刷新按钮,如果<em>线程</em>没有运行,立即执行,让其运行.问题是我无法来控制Sleep,怎样识别是否<em>sleep</em>已经起作用,怎样中断<em>sleep</em>的运行.(我不想用定时器来完成)rn请大侠赐教!
wait()和线程sleep()的区别
在Java.lang.Thread类中,提供了<em>sleep</em>(),而java.lang.Object类中提供了wait(), notify()和notifyAll()方法来操作<em>线程</em> <em>sleep</em>()可以将一个<em>线程</em>睡眠,参数可以指定一个时间。 wait()可以将一个<em>线程</em>挂起,直到超时或者该<em>线程</em>被唤醒。       <em>sleep</em>和wait的区别有:     1)这两个方法来自不同的类分别是
线程sleep方法
[code=&quot;java&quot;] public class Runnable2 implements Runnable{ public void run() { while (true) { System.out.println(&quot;----&quot; + new Date()+&quot;=======&quot;); try { Thread.<em>sleep</em>(1000); } ...
线程问题:Interrupt可以唤醒sleep线程吗?
C#参考手册有说,当<em>线程</em>进入睡眠时,它就进入WaitSeepJoin状态。如果<em>线程</em>处于睡眠状态,rn在达到指定的睡眠时间之前唤醒<em>线程</em>的唯一方法是使用Interrupt()方法。 我就参照写了一rn个例子如下:rn[code=csharp]rnrn static Thread t1;rn public static void Main()rn rn Console.WriteLine("Begin...");rn t1 = new Thread(new ThreadStart(Sleep10));rn t1.Start();rnrn Thread t2 = new Thread(new ThreadStart(WakeUpT1));rn t2.Start();rnrn Console.WriteLine("End...");rn Console.ReadLine();rn rnrn /// rn /// 睡眠十秒钟rn /// rn static void Sleep10()rn rn Thread.Sleep(10000);rn Console.WriteLine("10秒后才执行此语句");rn rnrn /// rn /// 中断<em>线程</em>rn /// rn static void WakeUpT1()rn rn if (t1.ThreadState == System.Threading.ThreadState.WaitSleepJoin)rn rn Console.WriteLine("<em>线程</em>1强制中断");rn t1.Interrupt();rn rn rn[/code]rn但是程序运行后报异常:ThreadInterruptedExceptionrnrn把异常输入msdn中,它说:调用 Interrupt 时,如果一个<em>线程</em>处于WaitSleepJoin 状态,rn则将导致在目标<em>线程</em>中引发 ThreadInterruptedExceptionrn rn这2个说的不是矛盾吗?如果<em>线程</em>处于<em>sleep</em>时,改如何及时唤醒呢?
SQLite Expert Professional 3.4.9.2218 正版 Key License下载
SQLite Expert Professional 3.4.9.2218 正版 Key License 相关下载链接:[url=//download.csdn.net/download/hcaihao/4346583?utm_source=bbsseo]//download.csdn.net/download/hcaihao/4346583?utm_source=bbsseo[/url]
C语言趣味程序百例精解下载
C语言趣味程序百例精解,一百个有去的用c语言编写的程序 相关下载链接:[url=//download.csdn.net/download/dycok520/2407100?utm_source=bbsseo]//download.csdn.net/download/dycok520/2407100?utm_source=bbsseo[/url]
正弦波、方波、三角波和锯齿波发生器下载
使用AT89S91和DAC0832实现的正弦波、方波、三角波和锯齿波。在PROTUES下仿真通过。 相关下载链接:[url=//download.csdn.net/download/jimmyhuang20090512/2741598?utm_source=bbsseo]//download.csdn.net/download/jimmyhuang20090512/2741598?utm_source=bbsseo[/url]
相关热词 c#串口测试应用程序 c# 匹配 正则表达式 c#防止窗体重绘 c#读写txt文件 c#挖地雷源代码 c#弹框选项 c# 移除 队列 c# 密码写入配置文件 c# 获取可用内存大小 c# 嵌入excel编辑
我们是很有底线的