много потоков
От: k732  
Дата: 28.01.07 11:24
Оценка:
хочу реализовать многопоточный сервер.

На определенное событие должны создаваться потоки. Временем жизни потоков необходимо управлять.
Поток представляет собой


class Thread : private boost::noncopyable {
private :
    boost::thread m_thread;
    static boost::xtime delay (int sec, int msec = 0, int nsec = 0);

public :
    Thread (const boost::function0<void>& func) : m_thread (func) {;}
    ~Thread () { m_thread.join(); }

    static void sleep (unsigned msec);
};


хотелось бы потоки хранить например в списке и отслеживать отработавшие — удалять их из списка.

Как проще сделать. В голову приходит лишь отдельный поток, который проверяет состояние потока и принимает решение о его удалении.
Но как определить состояние...

еще хотелось бы по выбору останавливать необходимые потоки

P.S. кстати как можно реализовать поток через boost::function1 (нужно в потоковый метод данные передавать — желательно конечно шаблонный класс)
P.S.S. в идеале хотелось бы "поиметь" класс работающий с потоками и выполняющий минимально необходимые действия
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.