【发布时间】:2011-08-03 03:46:01
【问题描述】:
我正在学习如何在 Java 中使用线程。我编写了一个实现 Runnable 以同时运行到另一个线程的类。主线程负责监听串行端口,而第二个线程负责将数据发送到同一个端口。
public class MyNewThread implements Runnable {
Thread t;
MyNewThread() {
t = new Thread (this, "Data Thread");
t.start();
}
public void run() {
// New Thread code here
}
第一个线程像这样开始第二个线程:
public class Main {
public static void main(String[] args) throws Exception{
new MyNewThread();
// First thread code there
}
}
这可行,但我的编译器标记了一条警告:在构造函数中启动新线程很危险。这是为什么呢?
这个问题的第二部分是:如果我在一个线程(串行端口侦听线程)中运行一个循环并且我在我的第二个线程中键入退出命令。如何让第一个线程终止?谢谢。
【问题讨论】:
-
最好将问题的第二部分分叉到另一个线程中,呃,我的意思是,问题。
-
考虑为问题的第二部分询问实际的第二个 StackOverflow 问题。这将为您提供每个问题的最佳答案。
-
第一个问题在这里得到了回答:stackoverflow.com/questions/84285/…。由于第二部分,我不会投票关闭作为重复...现在这变得复杂,因为已经有答案:(
标签: java multithreading terminate