中性公寓
COM+ 引進中性 Apartment,以簡化多線程環境中的程序設計。 中性 Apartment 是沒有使用者介面之元件的 COM+ 慣用模型。
在過去,為了防止瓶頸,需要伺服器延展性的 COM+ 開發人員必須實作自由線程元件;不過,自由線程模型很難實作,因為它們必須處理連鎖存取。 在中性 Apartment 中,物件會遵循多線程 Apartment 的指導方針,但可以在任何類型的線程上執行。 當線程在中性 Apartment 中執行時,會接收對象的內容,而不會造成線程切換。
每個程式只能有一個中性 Apartment。 若要選取中性 Apartment,請使用下列登錄設定:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID
{CLSID}
InprocServer32
ThreadingModel = Neutral
具有使用者介面的元件應該繼續使用單個線程 Apartment 作為慣用模型。 若要選取單個線程 Apartment,請使用下列登錄設定:
ThreadingModel = Apartment