共用方式為


多工考慮

建議的指導方針是盡可能使用最少的執行緒,進而將系統資源的使用降到最低。 這樣可以提高執行效能。 多工在設計應用程式時,會考慮資源需求和潛在衝突。 資源需求如下:

  • 系統會針對進程和執行緒所需的內容資訊取用記憶體。 因此,可以建立的進程和執行緒數目受限於可用的記憶體。
  • 追蹤大量執行緒會耗用大量的處理器時間。 如果執行緒太多,大部分的執行緒將無法進行重大進度。 如果大多數目前的執行緒都在一個處理序中,其他處理序中的執行緒排程頻率就會較低。

提供對資源的共用存取權可能會造成衝突。 若要避免它們,您必須同步處理共用資源的存取權。 這適用于系統資源 (,例如通訊埠) 、多個進程所共用的資源 (例如檔案控制代碼) ,或單一 (進程的資源,例如全域變數) 由多個執行緒存取。 無法正確同步處理相同或不同進程中的存取 (,) 可能會導致死結和競爭狀況等問題。 您可以用來協調多個執行緒之間資源分享的同步處理物件和函式。 如需同步處理的詳細資訊,請參閱 同步處理多個執行緒的執行。 減少執行緒數目可讓您更輕鬆地且更有效率地同步處理資源。

多執行緒應用程式的良好設計是管線伺服器。 在此設計中,您會為每個處理器建立一個執行緒,並建置應用程式維護內容資訊的要求佇列。 執行緒會在處理下一個佇列中的要求之前,先處理佇列中的所有要求。