各位好
是來找想法的
主要是想透過多執行緒做些什麼
並拿來面試
同時也希望是寫些我自己日常會用的
儘管有看書但從業到現在都沒實際用過
方便的話請簡述該功能細節
或提供 github gitlab
麻煩了
謝謝
不好意思沒辦法一一回應
我所求的是
你個人因為某需求而寫的
讓生活變的更簡單的工具
能面試最好但為次要
github也是次要
並且不是作業
理想的情境是
我正好需要
且看內容認為寫的出來
不懂就去 stackoverflow 問
本身用 java 也會去 java 版問
運用書中所學寫出來
作者:
hegemon (hegemon)
2022-05-23 06:03:00伸手牌?你知道有一種東西叫Google ,它還蠻好用的嗎?
作者:
enthos (影斯作業系統)
2022-05-23 06:44:00要拿去面試講喔 這樣算是請大家幫你寫作業的意思嗎?
提供個想法還好吧,又不是幫他做喔喔如果是拿 github 上照抄的話當我沒說
OS 恐龍本,有一章多執行序,要範例要解說都有也有作業
作者: k798976869 (kk) 2022-05-23 08:26:00
大學上os課本恐龍書 作業就有寫了
作者:
antpro (-_*|| 宅)
2022-05-23 09:02:00Refer to "FlashGet", a kind of download manager.I know it's very old software, though.
從業之後沒用過 除非你寫的都很底層先找找看哪些地方並行處理會加快的 就把它丟thread
作者:
calqlus (白夢の繭)
2022-05-23 09:35:00就等io反應或是讓GUI不死當的同步機制
多執行緒程式要執行一段時間,而且你會想著程式執行這樣才有多執行緒的意義。不然你用遞迴寫一個檔案空間分析器,能計算指定目錄以及其子目錄下的檔案大小總和,執行的時候有一個進度條顯示目前處理的目錄/檔案數目。這個作業應該不難做。
作者:
ouskit (ouskit)
2022-05-23 09:50:00隨便一個爬蟲
作者:
kentyeh (kent)
2022-05-23 10:31:00寄廣告信,轉檔,爬蟲,抓股價,都可以
作者: hidog (.....) 2022-05-23 10:36:00
你從業多久了-.-? 都跑硬體底層嗎github上面隨便找都有
作者: alex70266 (小眼) 2022-05-23 10:47:00
你是想練習自己做的東西用現成平台上的multi thread lib 還是寫出multi thread的實作?
作者:
Lhmstu (lhmstu)
2022-05-23 11:09:00不如看看作業系統kernel,最神的open source
作者:
cfc0719 (Nelson)
2022-05-23 11:13:00從業多久了?平常都做什麼?完全沒碰過multi-threaded也挺神奇
作者:
rodion (r-kan/reminder)
2022-05-23 11:28:00一個最常用的範例就是GUI工具阿 沒有多執行緒 你就會看見做一個耗時GUI操作 整個應用程式就不動了 (所以需要多執行緒)
作者: yesiah 2022-05-23 11:52:00
要用來面試的話可能需要提供一點業務內容比較好 不然像樓上大大提GUI結果你做底層的話也是白搭
就做個圖片批次壓縮轉檔工具,批次是例如有20個檔案然後交給5個執行序(可設定)去執行,這種工具網路上open source 應該也不少
作者:
yamakazi (大安吳彥祖)
2022-05-23 12:08:00你有多核心就可以用多執行緒啊,比如你做矩陣乘法就可以用多執行緒也不用到很底層,我之前在車機導航做QtUI就用到多執行緒日常工作的話假如你有很多文件要parsing再存檔,沒有多執行緒觀念的人可能就parsing一個存檔一個。有多執行緒概念和多核心可以用的話,我可能就開六個執行緒同時parsing不同文件再來就是make -j7 那個-j就是設定你要用幾個核來編譯
作者: alex70266 (小眼) 2022-05-23 12:26:00
通常練習這個要有情境啦..
作者:
umum29 (....)
2022-05-23 12:33:00關鍵字multithread + use case原子性和幾個flag要搞清楚就很厲害了
作者:
neo5277 (I am an agent of chaos)
2022-05-23 12:41:00影片剪輯
作者: pttyc 2022-05-23 13:27:00
如果是Python的話 可以查GIL 應該是個不錯的知識
有試著用多執行緒去爆破密碼學的東東啦,雖然成果不彰就是了
ptt就是最好的例子阿~~~你要如何一次讓50000人上線你不用多執行緒做得出來...這個機率很低
作者:
OrzOGC (洞八達人.拖哨天王)
2022-05-23 14:47:00GIL聽說就要有解了
作者:
acgotaku (otaku)
2022-05-23 15:11:00你先了解高併發IO模型與原理就很受用
作者:
ssccg (23)
2022-05-23 15:29:00榨多核心CPU效能的多執行緒,和高併發、非同步IO其實重點不太一樣,就一個多執行緒的關鍵字實在太籠統
作者: jerohands (這就是人生啊) 2022-05-23 16:27:00
搜尋 boost, asio, proactor 等關鍵字試試
作者:
Apache (阿帕契)
2022-05-23 18:52:00人好好
作者:
feeya (24 August 升格為鄉民)
2022-05-23 19:45:00你寫個桌面應用程式就需要多執行緒了 否則UI會卡住
作者:
Sunal (SSSSSSSSSSSSSSSSSSSSSSS)
2022-05-23 20:13:00GIL 有寫?那不就整個CPython要翻掉*有解
作者:
pttano (pttano)
2022-05-23 21:20:00路過噓
作者:
DrTech (竹科管理處網軍研發人員)
2022-05-23 21:30:00從業沒用過… 這很可怕吧,難道沒做過任何IO處理,或沒寫過多人同時使用的程式
作者:
snac (snack)
2022-05-24 09:07:00大家人真的好好,這種文還會回,感覺就是什麼都不懂沒做功課
作者:
hegemon (hegemon)
2022-05-24 09:43:00如果是用framework 的話,去翻翻底層的source code應該都有實作
作者:
calqlus (白夢の繭)
2022-05-24 12:56:00還是建議自己寫個socket program會比較好懂
以前桌面視窗程式 GUI 沒 thread 不會動吧
作者:
DrTech (竹科管理處網軍研發人員)
2022-05-24 22:59:00沒那麼複雜吧,隨便讀個檔案,搜尋裡面出現過關鍵字,UI不停頓卡住,這種最基本的功能就能練了。
現在CPU速度太快,但IO永遠是瓶頸單純跑運算除非是暴力攻擊法,不然一般一下子就跑完
作者:
gmoz ( This can't do that. )
2022-05-25 10:54:00先練好中文表達
...........發文時沒有考慮到你的中文能力 歹勢
問這樣的問題就是沒自己想過,直接看別人都做什麼樣的功能,你用自己的方式實作,你馬上就知道沒有多執行緒的程式會差在哪了
作者:
OrzOGC (洞八達人.拖哨天王)
2022-05-25 14:23:00GUI會卡住等上一個指令完成然後就炸掉了XD
作者: BigHeadDoggy (大頭狗仔) 2022-05-27 01:08:00
可憐
作者:
opencat (opencat)
2022-05-27 16:49:00這...隨便一個語言 打上關鍵字 就有一堆了吧...
作者: caty1010 (Lucas) 2022-05-28 11:37:00
問使用情境就算了,還想伸手copy 真幸福