Tag: multithreading

为什么在一个捕获InterruptException块中调用Thread.currentThread.interrupt()?

为什么在catch块中调用Thread.currentThread.interrupt()方法?

如何在新的线程中运行一段简单的代码?

我有一些代码需要在不同于GUI的线程中运行,因为它当前会导致表单在代码运行时冻结(10秒左右)。 假设我从来没有创build过一个新的线程; 什么是如何在C#中使用.NET Framework 2.0或更高版本的简单/基本示例?

什么是互斥量?

互斥量是一种常用于解决multithreading问题的编程概念。 我对社区的问题: 什么是互斥量,你如何使用它?

java thread.sleep把摆动用户也睡觉

我即时创build一个简单的testing应用程序,每隔一小时通过JFileChooser使用thread.sleep()在所选目录上运行检查。 但是,当我select目录和方法运行ui面板变灰,摆动位消失。 这个线程似乎把用户的睡眠以及其调用的方法。 if (option == JFileChooser.APPROVE_OPTION) { selectedDirectory = chooser.getSelectedFiles(); try { while (true) { runCheck(selectedDirectory); Thread.sleep(1000*5);//1000 is 1 second } } catch (InterruptedException e1) { Thread.currentThread().interrupt(); e1.printStackTrace(); } } 我正在寻找一种解决此问题的方法,以便我可以打印在ui .setText(结果)中运行的检查的结果。

java.lang.IllegalStateException:不在FX应用程序线程上; currentThread =线程4

我试图从一个线程设置一个文本对象的string,但它给了我这个错误: Exception in thread "Thread-4" java.lang.IllegalStateException: Not on FX application thread; currentThread = Thread-4 at com.sun.javafx.tk.Toolkit.checkFxUserThread(Unknown Source) at com.sun.javafx.tk.quantum.QuantumToolkit.checkFxUserThread(Unknown Source) at javafx.scene.Scene.addToDirtyList(Unknown Source) at javafx.scene.Node.addToSceneDirtyList(Unknown Source) at javafx.scene.Node.impl_markDirty(Unknown Source) at javafx.scene.shape.Shape.impl_markDirty(Unknown Source) at javafx.scene.Node.impl_geomChanged(Unknown Source) at javafx.scene.text.Text.impl_geomChanged(Unknown Source) at javafx.scene.text.Text.needsTextLayout(Unknown Source) at javafx.scene.text.Text.needsFullTextLayout(Unknown Source) at javafx.scene.text.Text.access$200(Unknown Source) at javafx.scene.text.Text$2.invalidated(Unknown Source) at javafx.beans.property.StringPropertyBase.markInvalid(Unknown Source) at javafx.beans.property.StringPropertyBase.set(Unknown […]

为什么从`std :: async`返回的未来的析构函数被阻塞?

当试图回答另一个Stackoverflow问题时 ,我意识到这个简单的C ++ 11代码片段隐式地阻塞了调用线程: std::async(std::launch::async, run_async_task) 对我来说,这似乎是规范的C ++ 11方式asynchronous启动任务而不关心结果。 相反,人们必须明确地创build和分离一个线程(见提到的问题的答案 ),以实现这一点。 所以这里是我的问题:是否有任何std::future的析构函数被阻止的安全性/正确性的原因? 如果阻止get只是否是不够的,如果我不感兴趣的返回值或例外,它只是火灾和遗忘?

如何在.NET中设置处理器相关性?

我们可以设置两个线程或两个任务在C#应用程序中以不同的处理器关系执行吗? 我已经阅读了关于SetThreadAffinityMask但没有发现如何应用的例子。 或者,TPL(任务并行库)是否有任何方法执行两个线程/高优先级的任务使用100%的CPU?

为什么我的++不是primefaces的?

为什么i++在Java中不是primefaces的? 为了让Java更深入一些,我试着去计算线程循环执行的频率。 所以我用了一个 private static int total = 0; 在主类。 我有两个线程。 线程1:打印System.out.println("Hello from Thread 1!"); 线程2:打印System.out.println("Hello from Thread 2!"); 我计算由线程1和线程2打印的行。但线程1 +线程2的行数与打印的总行数不匹配。 这是我的代码: import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.logging.Level; import java.util.logging.Logger; public class Test { private static int total = 0; private static int countT1 = 0; private static int countT2 = 0; private boolean run […]

你什么时候调用java的thread.run()而不是thread.start()?

…这个问题说的就是我相信的一切!

Reader / Writerlocking在C ++中

我在C ++中寻找一个好的读写器锁。 我们有一个罕见的作家和许多频繁的读者的用例,并希望为此进行优化。 最好是我想要一个跨平台的解决scheme,但是只有一个Windows是可以接受的。