PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
java
[問題] Thread 數量 的評估
作者:
noapaov
(單身漢)
2015-06-29 00:31:23
最近在實作一個遊戲app, 看了一些文章, 有的建議提供執行緒的數量,
有的則建議適量即可, multi - Thread的主要目的是提高CPU的使用率,
但實在有點不太清楚一個伺服器端的程式到底要建立多少個執行緒 ? 假設我有5個功能
EX : 登入 、 聊天 、 發信 、 金流 、 遊戲戰爭運算~
啟動越多 Threads , 相對的管理成本與記憶體的負擔也就比較大, 如果以我上述的例子 ~
我需要啟動5個以上的Thread來處理嗎?
一般都以什麼方法來判定要開啟幾個thread的?
謝謝 ~
作者:
fireslayer
(fireslayer)
2015-06-29 01:48:00
五個還好吧,然後越多thread就要越小心同步的問題
作者:
cowbaying
(是在靠北喔)
2015-06-29 02:36:00
不單是看數量 你要看之間有沒有共用的資料注意thread-safe
作者:
AmosYang
(泛用人型編碼器)
2015-06-29 04:02:00
我的舊文
#1Bj6ZTjD
有稍微提到這個
作者:
Killercat
(殺人貓™)
2015-06-29 05:33:00
thread用功能來分來做profiling的話,非常危險五個thread的peak,heap等等完全不一樣只能說這是一種很粗略地分法,但是不能當作profiling的準則,這SA的太少資源切割(防peak)的也太粗略正確的分法是profiling找出gap 把gap thread化並且避免過多的gap集中在一起造成peak不過講真的啦,通常就開個thread pool, pool大小就cpu*2,這大概是經驗上來講比較可行的試法了
作者:
noapaov
(單身漢)
2015-06-29 14:05:00
我看一般聊天室的功能, 一個Client就會開啟一個Thread也就是如果有1000個玩家就會產生1000個Thread斷線的時後可能在關閉Thread或把Thread丟回Pool之類的不支到大家對這樣的作法有時麼意見呢?
作者:
AmosYang
(泛用人型編碼器)
2015-06-29 17:21:00
如果不需考量 scalability 的話, 能動不會crash就好 :D
作者: kojilin (阿~~小達達)
2015-06-30 10:34:00
基本上大家連上線也沒頻繁在動作的,就不用那麼多thread
作者:
noapaov
(單身漢)
2015-06-30 11:20:00
是沒錯 ~ 雖然沒使用, 但是thread 還是會佔用著一些資源
作者:
popcorny
(畢業了..@@")
2015-06-30 13:16:00
沒什麼大問題。在往上會有點困難,但是初期好寫比較重要
繼續閱讀
Re: [問題] JVM語言取代Java語言?
dream1124
[問題] Java PApplet 畫圖標上座標
LDPC
[徵求] 巨匠Java考試券
s30142
[問題] 關於 Socket連線問題
tas72732002
[徵才] 外商公司徵Sr.Java Engineer
Sheepforpart
[問題] Java有辦法new C# dll中的class嗎?
baconcsie
Re: [問題] 不定長度的byte陣列該怎麼放?
popcorny
[問題] 不定長度的byte陣列該怎麼放?
LaPass
售java考試卷
celticskg5
[問題] 參數的Parser如何撰寫呢?
cjoe
Links
booklink
Contact Us: admin [ a t ] ucptt.com