物件介面

Windows 提供執行下列工作的函式:

  • 建立物件
  • 取得物件控制碼
  • 取得物件的相關資訊
  • 設定物件的相關資訊
  • 關閉物件控制碼
  • 終結物件

每個物件不需要其中一些工作。 其中一些工作會針對特定物件合併。 例如,應用程式可以建立事件物件。 其他應用程式可以開啟 事件,以取得這個事件物件的唯一控制碼。 當每個應用程式使用 事件完成時,它會將其控制碼關閉至 物件。 當事件物件沒有剩餘的開啟控制碼時,系統會終結事件物件。 相反地,應用程式可以取得現有視窗物件的控制碼。 不再需要視窗物件時,應用程式必須終結物件,使視窗控制碼失效。

在關閉所有物件控制碼之後,物件偶爾會保留在記憶體中。 例如,執行緒可以建立事件物件,並等候事件控制碼。 當執行緒正在等候時,另一個執行緒可能會關閉相同的事件物件控制碼。 事件物件會保留在記憶體中,而沒有任何事件物件控制碼,直到事件物件設定為訊號狀態且等候作業完成為止。 此時,系統會從記憶體中移除 物件。

控制碼和物件會耗用記憶體。 因此,若要保留系統效能,您應該在不再需要物件時立即關閉控制碼和刪除物件。 如果您未這麼做,您的應用程式可能會因為過度使用分頁檔案而損害系統效能。

當進程終止時,系統會自動關閉控制碼,並刪除進程所建立的物件。 不過,當執行緒終止時,系統通常不會關閉控制碼或刪除物件。 唯一的例外狀況是視窗、勾點、視窗位置和動態資料交換 (DDE) 交談物件;當建立執行緒終止時,就會終結這些物件。