Exemple #1
0
bool CServer::Stop(void) {
    if (isRunning()) {
		isStarted = false;
        iop_usleep(100);
        for (unsigned int i = 0; i < sendthread_num; i++) {
            iop_thread_cancel(pthread_send[i]);
		}
        for (unsigned int i = 0; i < recvthread_num; i++) {
            iop_thread_cancel(pthread_recv[i]);
		}
        for (unsigned int i = 0; i < msgthread_num; i++) {
            iop_thread_cancel(pthread_msg[i]);
		}
		delete[] pthread_send;
		delete[] pthread_recv;
		delete[] pthread_msg;
    }
	return true;
}
int iop_log_service_stop()
{
    if(!g_iop_log_service){return 0;}
    iop_log_flush(g_iop_log_service);
    iop_lock(&(g_iop_log_service->lock));
    if((g_iop_log_service->fp))
    {
        fclose(g_iop_log_service->fp);
        g_iop_log_service->fp
= 0;
    }
    iop_thread_cancel((g_iop_log_service->tid));
    iop_unlock(&(g_iop_log_service->lock));
    iop_lock_destroy(&(g_iop_log_service->lock));
    free(g_iop_log_service);
    g_iop_log_service = 0;
    return 0;
}
Exemple #3
0
CClientNet::~CClientNet() {
    iop_thread_cancel(pthread_hb);
	DESTROY(m_agent);
    if (m_replay)
        delete m_replay;
}
Exemple #4
0
void CClientNet::endHeartBeat() {
    iop_thread_cancel(pthread_hb);
}