草庐IT

thread-sleep

全部标签

java - 为什么选择 SwingWorker?为什么不只是 Thread 或 Runnable?

使用SwingWorker代替Thread或Runnable有什么优势? 最佳答案 我认为SwingWorker的文档还不错:AnabstractclasstoperformlengthyGUI-interactingtasksinadedicatedthread.Whenwritingamulti-threadedapplicationusingSwing,therearetwoconstraintstokeepinmind:(refertoHowtoUseThreadsformoredetails):Time-consuming

JAVA笔试基础知识-final/static+abstract/interface+wait/sleep+tcp/udp

1、final关键字和static关键字的区别/***final修饰类:*使用final修饰类的目的简单明确,表明这个类不能被继承。*当程序中有永远不会被继承的类时,可以使用final关键字修饰。*被final修饰的类所有成员方法都将被隐式修饰为final方法。**final修饰方法:*首要作用是锁定方法,不让任何继承类对其进行修改。*另外一个作用是在编译器对方法进行内联,提升效率。**final修饰变量:*当final修饰的是一个基本数据类型数据时,这个数据的值在初始化后将不能被改变。(变为常量)*当final修饰的是一个引用类型数据时,也就是修饰一个对象时,引用在初始化后将永远指向一个内存

Java:如何使用 Thread.join

我是线程的新手。我怎样才能让t.join工作,调用它的线程会一直等到t执行完毕?这段代码只会卡住程序,因为线程正在等待自己死亡,对吧?publicstaticvoidmain(String[]args)throwsInterruptedException{Threadt0=newThready();t0.start();}@Overridepublicvoidrun(){for(Strings:info){try{join();Thread.sleep(1000);}catch(InterruptedExceptione){e.printStackTrace();}System.out

java - Thread.sleep 的方法引用不明确

我遇到了一个奇怪的问题,其中对Thread::sleep的方法引用不明确,但具有相同签名的方法却不是。packagetest;publicclassTest{publicstaticvoidmain(String[]args){foo(Test::sleep,1000L);//finefoo((FooVoid)Thread::sleep,1000L);//finefoo(Thread::sleep,1000L);//error}publicstaticvoidsleep(longmillis)throwsInterruptedException{Thread.sleep(millis)

java - Thread.getStackTrace() 有多贵?

在一个日志系统中,每条日志的输出都是由一个辅助类用这样的方法完成的publicvoiddebug(Stringmessage){Loggerlogger=Logger.getLogger(getCallingClass());logger.debug(message);}...publicClassgetCallingClass(){/*CallsThread.getStackTrace()andbacktracesuntiltheclassonthestacktrace!=this.getClass().*/returnclassFound;}运行它的成本有多高?它是否会对性能产生重

java - 如何停止 "JavaFX Application Thread"

我有一个简单的控制台应用程序,有时需要执行图形操作,对于那些我使用JavaFx框架的应用程序(我需要一些功能,比如文本的css样式)我只是在隐藏场景中生成一些形状和文本,然后将它们保存在文件中,仅此而已,我知道要使用JavaFx,我必须将图形操作传递给JavaFx线程,但是当一切都完成并且我必须关闭应用程序(几个小时后)时,这个JavaFx线程仍然保持打开状态......我真的不想用System.exit()强制退出,因为如果某些东西被阻止我可能想知道/等待(另外我不想将所有东西作为JavaFx应用程序执行(因为JavaFx组件不到我的1%主要应用)代码非常简单,谷歌搜索我发现只能使用

蓝屏终止代码SYSTEM-THREAD-EXCEPTION-NOT-HANDLED如何解决 终止代码:SYSTEM-THREAD-EXCEPTION-NOT-HANDLED 失败的操作:nvlddmk

蓝屏终止代码SYSTEM-THREAD-EXCEPTION-NOT-HANDLED如何解决终止代码:SYSTEM-THREAD-EXCEPTION-NOT-HANDLED失败的操作:nvlddmkm.sys显示英伟达显卡有关的错误。若是有超频,降压等,建议恢复正常,包括主板自动超频功能。然后到设备供应商的官网更新一下bios,覆盖安装一下显卡驱动,请勿使用第三方的驱动安装程序。完成后鼠标右键单击开始按钮(微软图标的按钮)→"WindowsPowerShell(I)(管理员)(A)”→输入:(WIndows11中可能显示Windows终端(管理员))sfc/SCANNOW(按下Enter键)Di

java - 模拟 java.lang.Thread 的最佳方法是什么?

我正在为Java6*1)开发转换器,它执行一种部分评估,但为了简单起见,让我们考虑一下,Java程序的抽象语法树解释。如何通过解释型程序模拟线程的行为?目前我的想法是:AstInterpreter应该实现java.lang.Runnable。它还应该重写java.lang.Thread(或其子类)的每个新实例表达式,替换Thread的目标(java.lang.Thread)。lang.Runnable)与新的AstInterpreter实例:编辑:提供了更复杂的示例。编辑2:备注1。目标程序:classPrintDemo{publicvoidprintCount(){try{for(i

Java 套接字 : multiple client threads on same port on same machine?

我是Java套接字编程的新手,我想了解下面的代码是否正确。我的问题是:我能否在每个线程上让多个客户端尝试连接到同一程序中的服务器实例,并期望服务器在客户端之间隔离的情况下读写数据?publicclassClientextendsThread{...voidrun(){Socketsocket=newSocket("localhost",1234);doIO(socket);}}publicclassServerextendsThread{...voidrun(){//serverSocketon"localhost",1234SocketclientSock=serverSocket.

java - 为什么我们不能在 Thread 对象的同一个实例上调用两次 start 方法?

我在阅读有关线程的文章时发现我们不能在同一个线程实例上调用两次start方法。但我不明白同样的确切原因。那么为什么我们不能调用它两次甚至更多次呢? 最佳答案 在我看来,Thread对象是实际运行上下文的“句柄”。如果您允许创建许多与同一个java.lang.Thread关联的并发执行,您希望getStackTrace()和getState()方法返回什么?我想Thread类可以设计为允许产生多个运行上下文,但它的API会不那么简单和干净。 关于java-为什么我们不能在Thread对象的