作者gmoz ( This can't do that. )
看板java
標題[問題] 請問Thread的編號和名字
時間Tue Oct 18 14:37:13 2011
我有一隻程式
迴圈每五分鐘會執行一次"Agent agent=new Agent();" "agent.executeTask();"
這個agent會生出6條thread執行,並印出結果
"ex: Thread-n completed"
然後過了五分鐘再"Agent agent=new Agent();" ...loop
由於我這隻程式可能一跑就是半年以上不會停,
雖然process的總thread數目不會累加,那6條thread的確會被回收
使用的memory的大小也在合理範圍內
但看著Thread的getName()出來的名字一直增加
ex. Thread-12345 completed
Thread-12346 completed
Thread-12347 completed
還是會有點毛毛的
我想問的是,雖然getId()傳回的型別是long 、getName()傳回的是String
但這樣長期增加下去可能會有什麼不可預期的結果嗎?
PS.因為時間的關係,還沒時間改寫成thread pool
謝謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.67.235
※ 編輯: gmoz 來自: 61.221.67.235 (10/18 14:39)
→ dou0228:開 JProfiler 去看, 怕的話把 5分鐘改短 暴力跑看看 10/18 18:28
→ tkcn:long 範圍到 2^63-1,試算一下就知道不太可能跑完了 :p 10/18 22:02
→ tkcn:就算真的超過了,也只是 overflow 變成負數,應不會有問題 10/18 22:06