作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个创建多个线程的函数。对于每个线程,构造函数从不同的类中获取一个对象,因此我必须首先创建此类的对象,然后再创建线程。代码下方(为简化示例而修改)
public static void createThread (int n) {
for(int i=0;i<n;i++){
someClass obj=new someClass(i);
ThreadClass myThread=new ThreadClass(obj);
myThread.run();
}
这里的问题是我并没有真正看到线程是随机运行的。我在 run() 上打印每一个,我看到它们按顺序显示。这有什么问题吗?我应该以不同的方式运行它吗?
谢谢
最佳答案
使用 Thread.start()
而不是 Thread.run()
。使用 run
方法只是在同一线程中调用该方法,而 start
方法实际上会创建一个新线程并在其中调用 run
方法线程。
我假设“随机”是指交错。这应该会导致那个结果。
关于java - 如果在 java 中创建线程并运行,则创建一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14033916/
我是一名优秀的程序员,十分优秀!