【发布时间】:2011-09-02 16:16:34
【问题描述】:
当线程终止并创建新线程时,线程编号 (id) 会增加。 Java 7 只是喜欢递增数字还是我做错了什么?
我正在使用 Java 7 构建一个服务应用程序,它在建立连接时创建一个新线程,然后为连接提供服务。当服务收到关闭消息时,它会退出循环并允许完成线程中的代码。因此,据我所知,线程的生命应该被终止(就像任何实例对象一样)。 Java 7 不使用 Thread.stop() 或 Thread.destroy() 或任何类似的东西。 (我认为不是从 v5 开始。)
我有一个带有“打开连接”、“关闭连接”和“发送消息”按钮的界面以及线程中相应的 println 语句,因此我可以看到发生了什么。我打印出来的变量之一是 Thread.currentThread()。当我打开第一个连接时,currentThread() 是 Thread[Thread-0,5,main]。我关闭连接并让消息脱离循环,表明 Thread[Thread-0,5,main] 正在终止。
好的,现在回到第一方,对吧?没有线程。
我再次点击连接并输入 Thread[Thread-1,5,main]。看到了吗? “Thread-1”而不是“Thread-0”。每次我这样做,数字都会增加 1。
(如果不是太麻烦的话,附带问题。“5,main”是什么意思?)
评论回复:线程停止:Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?。
【问题讨论】:
标签: java multithreading