Sun Cluster 資料服務開發者指南 (適用於 Solaris 作業系統)

Stop 方法

RGM 在某叢集節點上呼叫資源類型實作的 Stop 回呼方法以停止應用程式。Stop 方法的回呼語義要求以下因素︰

DSDL 公用程式 scds_pmf_stop() 在首次嘗試使用 SIGTERM 平緩停止應用程式時,應滿足多數應用程式。然後,此函數將 SIGKILL 傳送至程序。此函數會假定應用程式使用 scds_pmf_start() 在 PMF 下啟動。請參閱PMF 函數,以取得有關此公用程式的詳細資訊。

假定用於停止應用程式的應用程式特定函數名為 svc_stop(),按如下所示實作 Stop 方法︰

if (scds_initialize(&handle, argc, argv)!= SCHA_ERR_NOERR)
{
   return (1);   /* Initialization Error */
}
return (svc_stop(handle));

之前 svc_stop() 函數的實作是否包含 scds_pmf_stop() 函數是不相關的。決定是否包含 scds_pmf_stop() 函數要取決於應用程式是否使用 Start 方法在 PMF 下啟動。

由於即使系統目前遇到問題,Stop 方法應嘗試在此節點上停止應用程式,因此,svc_validate() 方法不用於 Stop 方法的實作。