コード例 #1
0
ファイル: CServer.cpp プロジェクト: ideallx/serveree
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;
}
コード例 #2
0
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;
}
コード例 #3
0
ファイル: CClientNet.cpp プロジェクト: ideallx/serveree
CClientNet::~CClientNet() {
    iop_thread_cancel(pthread_hb);
	DESTROY(m_agent);
    if (m_replay)
        delete m_replay;
}
コード例 #4
0
ファイル: CClientNet.cpp プロジェクト: ideallx/serveree
void CClientNet::endHeartBeat() {
    iop_thread_cancel(pthread_hb);
}