Exemple #1
0
int WorkManagerImpl::Abort()
{
    if(m_state <= 0) return m_state;
    m_state = -1;
    if(m_dispatcherthread) m_dispatcherthread->interrupt();
    //usleep(50 * 1000);
    int count = m_workers.size();
    for(int i=0; i<count; i++)
    {
        Worker* worker = m_workers[i];
        if(worker) worker->Abort();
    }
    m_state = -1;
    return m_state;
}