Sun Cluster 数据服务开发者指南(适用于 Solaris OS)

xfnts_monitor_stop 方法

由于 xfnts_monitor_start 方法使用 scds_pmf_start() 来启动 PMF 下的监视器守护进程,xfnts_monitor_stop 将使用 scds_pmf_stop() 来停止监视器守护进程。


注 –

xfnts_monitor_stop 将首先调用执行一些必要的内务处理函数的 scds_initialize()scds_initialize() 函数scds_initialize(3HA) 手册页包含更多信息。


xfnts_monitor_stop 方法用于调用在 xfnts.c 文件中定义的 mon_stop() 方法,如下所示:

scds_syslog_debug(DBG_LEVEL_HIGH,
      "Calling scds_pmf_stop method");

   err = scds_pmf_stop(scds_handle, SCDS_PMF_TYPE_MON,
       SCDS_PMF_SINGLE_INSTANCE, SIGKILL,
       scds_get_rs_monitor_stop_timeout(scds_handle));

   if (err != SCHA_ERR_NOERR) {
      scds_syslog(LOG_ERR,
          "Failed to stop fault monitor.");
      return (1);
   }

   scds_syslog(LOG_INFO,
       "Stopped the fault monitor.");

   return (SCHA_ERR_NOERR); /* Successfully stopped monitor */
}

关于在 svc_mon_stop() 中对 scds_pmf_stop() 函数的调用,请注意以下几点:


注 –

退出前,xfnts_monitor_stop 方法将调用 scds_close() 以收回由 scds_initialize() 分配的资源。scds_initialize() 函数scds_close(3HA) 手册页包含更多信息。