- 搜索架構之道:App中的搜索系統設計與優化實踐
- 劉俊啟
- 326字
- 2025-01-03 16:12:51
2.2.1 多線程技術
多線程技術是一種在計算機程序中同時運行多個任務的技術,旨在提高程序的并發性和效率。如在需求輸入階段,用戶輸入的過程和搜索建議的獲取過程分別由兩個線程并行執行,目的是兩個任務在執行的過程中互不影響。
用戶輸入的過程與UI交互相關,一般來講,UI相關的操作都是在主線程中完成的,而要想網絡請求相關的過程與用戶輸入的過程并行處理、不相互等待,這時就需要使用多線程技術。

圖2-3 搜索建議示例
在單核CPU上實現同個時間段運行多個線程,操作系統會將小的時間片分配給每一個線程,這樣就能夠讓用戶感覺到有多個任務在同時進行,避免任務之間相互等待。如果CPU是多核的,那么多線程就可以真正以并發方式執行,從而減少完成某項操作所需要的總時間。關于并行化的相關內容將在第4章介紹。