草庐IT

nio-thread

全部标签

java - 如何在类路径中修复 "Found Netty' 的 native epoll 传输,但 epoll 不可用。使用 NIO 代替“警告?

我正在使用Cassandra,在启动期间,Netty会打印一strip有堆栈跟踪的警告:FoundNetty'snativeepolltransportintheclasspath,butepollisnotavailable.UsingNIOinstead."应用程序运行正常,但有没有办法修复警告?这是完整的堆栈跟踪:16:29:46WARNcom.datastax.driver.core.NettyUtil-FoundNetty'snativeepolltransportintheclasspath,butepollisnotavailable.UsingNIOinstead.ja

Java nio : How to add extension to an absolute path?

这感觉应该是直截了当的事情,但我似乎可以找到一个优雅的解决方案,而无需转换为File。给定一个路径Pathpath=Paths.get("/a/b/foo")如何获取路径/a/b/foo.bar?subpath将返回相对路径,无论原始路径是相对路径还是绝对路径。我宁愿不必使用额外的库。但是,也许这是唯一的方法? 最佳答案 要更改Path的文件名,请使用resolveSibling()之一方法:Thisisusefulwhereafilenameneedstobereplacedwithanotherfilename.使用此方法可确保

java - 在 Thread.join() 之前调用 Thread.interrupt() 会导致 join() 立即抛出 InterruptedException 吗?

基本上,就是问题标题所说的内容。Threadt=newThread(someRunnable);t.start();t.interrupt();t.join();//doesanInterruptedExceptiongetthrownimmediatelyhere?从我自己的测试来看,似乎是这样,但只是想确定一下。我猜Thread.join()在执行其“等待”例程之前检查线程的interrupted状态? 最佳答案 DoescallingThread.interrupt()beforeaThread.join()causethej

java - 为什么 'File.exists' 返回 true,即使 NIO 'Files.exists' 类中的 'Files' 返回 false

我正在尝试确定文件是否存在于网络文件夹中://Filenameis"\\QWERTY\folder\dir\A123456.TXT"Pathpath=Paths.get("\\\\QWERTY\\folder\\dir\\A123456.TXT")使用NIO文件:Files.exists(path)==false使用文件:path.toFile().exists()==true根据我们的测试,使用File似乎是正确的。为什么File比Files更好用?那么,它是什么?不能两者兼而有之!等等,还有Files.notExists(path)。当网络共享文件实际存在时Files.exists

java - 为什么不能重新启动 Java Thread 对象?

我知道不可能重新启动使用过的JavaThread对象,但我找不到解释为什么这是不允许的;即使保证线程已完成(参见下面的示例代码)。我不明白为什么start()(或者至少是restart())方法不能以某种方式重置内部状态——无论它们是什么-将Thread对象设置为与新创建Thread对象时相同的值。示例代码:classThreadExample{publicstaticvoidmain(String[]args){ThreadmyThread=newThread(){publicvoidrun(){for(inti=0;i 最佳答案

java - Executors 相对于 new Thread 的优势

在Java程序中使用执行器比使用线程有什么好处。比如ExecutorServicepool=Executors.newFixedThreadPool(2);voidsomeMethod(){//ThreadnewThread(newSomeRunnable()).start();//vs//Executorpool.execute(newSomeRunnable());}执行器是否只限制允许同时运行的线程数(线程池)?它实际上是否将可运行对象多路复用到它创建的线程上?如果不是,它是否只是一种避免每次都必须编写newThread(runnable).start()的方法?

java - Servlet "has started a thread but failed to stop it"- Tomcat 内存泄漏

ApacheTomcat说了很多次:Thewebapplication[/MyServlet]appearstohavestartedathreadnamed[pool-61-thread-2]buthasfailedtostopit.Thisisverylikelytocreateamemoryleak.这很危险吗?servlet应该能够处理10.000个请求/天。如何在完成后关闭线程?classWorker{privatefinalCountDownLatchstartSignal;privatefinalCountDownLatchdoneSignal;privatefinali

带有通配符的 Java 7 nio 列表目录

我想使用通配符在目录中查找文件。我在Java6中有这个,但想将代码转换为Java7NIO:Filedir=newFile(mydir);FileFilterfileFilter=newWildcardFileFilter(identifier+".*");File[]files=dir.listFiles(fileFilter);没有WildcardFileFilter,我已经尝试了一些globs。 最佳答案 您可以将glob传递给DirectoryStreamimportjava.nio.file.DirectoryStream;

java - RUNNABLE Thread.State 但在 Object.wait()

我提取了我的容器进程的JStack并让线程在那里运行,并按Thread.state分组的以下分布:countthreadstate67RUNNABLE1TIMED_WAITING(onobjectmonitor)8TIMED_WAITING(parking)4TIMED_WAITING(sleeping)3WAITING(onobjectmonitor)17WAITING(parking)对于可运行的线程,我有以下描述:"http-bio-8080-exec-55"daemonprio=10tid=0x000000002cbab300nid=0x642binObject.wait()[

java - 虚假唤醒会影响 Thread.sleep 吗?

虚假唤醒会影响对Thread.sleep(x)的调用吗?显然,计时器不是100%精确(导致唤醒时间略有不准确),但它是否受到虚假唤醒问题的影响? 最佳答案 你问的是Thread.sleep()是否受相同的spuriouswakeup影响已记录影响Object.wait(long)的问题,对吗?答案是没有记录在案的与Thread.sleep()相关的虚假唤醒。您是对的,当您请求N毫秒时,对于您究竟会睡多久并没有硬性保证。当然,Thread.sleep()在线程中断时终止。 关于java-虚