//Step 9.1 start heartbeat thread
//����һ���̣߳�ÿ��supervisor.heartbeat.frequency.secsд��һ��supervisor������Ϣ
AsyncHeartbeat asyncHB = new AsyncHeartbeat(conf, hb, active);
AsyncLoopThread heartbeat = new AsyncLoopThread(asyncHB, false, null,
Thread.MAX_PRIORITY, true);
threads.add(heartbeat);
//Step 9.2 start sync Supervisor thread
//����һ���̣߳�ÿ��10��ִ��SynchronizeSupervisor
AsyncSynchronizeSupervisor syncSupervisor = new AsyncSynchronizeSupervisor(
eventManager, synchronizeSupervisor, active);
AsyncLoopThread syncsThread = new AsyncLoopThread(syncSupervisor);
threads.add(syncsThread);
// Step 9.3 start sync process thread
//����һ���̣߳�ÿ��supervisor.monitor.frequency.secs��ִ��SyncProcesses
AsyncSyncProcesses syncProcess = new AsyncSyncProcesses(conf,
processesEventManager, syncProcesses, active);
AsyncLoopThread syncpThread = new AsyncLoopThread(syncProcess, false,
null, Thread.MAX_PRIORITY, true);
threads.add(syncpThread);
LOG.info("Starting supervisor with id " + supervisorId + " at host "
+ myHostName);