繁体   English   中英

Thread.sleep对在Windows上等待完成文件创建/移动的可运行任务的影响

[英]Effect of Thread.sleep on a runnable task waiting on windows to complete file creation/moving

我有一个条件,其中Windows文件夹上的文件移动/创建正在为任务继续使用该路径上的文件创建定时问题

因此,我正在使用线程.sleep(30ms)休眠运行该任务的守护进程线程,直到Windows正常运行,并且允许我的任务正常运行而没有任何FileNotFoundException异常为止。

初始化类

 Thread t = new Thread (processTask);
 t.setdaemon(true)
 t.start();

任务班

 class ProcessTask() extends Runnable 
  {
   Files.move(source, destination, copyoption);
   Thread.sleep(30ms); //to wait for windows to complete move
   new FileInputstream(sourceFile);
  }

可以肯定地说thread.sleep(30ms)只休眠我当前的守护进程线程吗? 有没有办法确认睡眠在哪里起作用

Thread.sleep()影响当前线程。 它不会使其他线程进入睡眠状态。

但是,对于程序逻辑,使用Thread.sleep()绝不是一个好主意。 特别是在等待其他操作完成时。 这些应该通过通知机制来处理,而不是等待随机数,并希望一切都会正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM