Некоторые заголовочные файлы
От: roman313  
Дата: 02.03.20 09:31
Оценка: 6 (1)
http://files.rsdn.org/93677/%d0%97%d0%b0%d0%b3%d0%be%d0%bb%d0%be%d0%b2%d0%be%d1%87%d0%bd%d1%8b%d0%b5%20%d0%a4%d0%b0%d0%b9%d0%bb%d1%8b.rar
Re: Некоторые заголовочные файлы
От: EreTIk EreTIk's Box
Дата: 02.03.20 12:57
Оценка:
Здравствуйте, roman313, Вы писали:

Thread.Object.h:
// Класс-"Поток"
class CThreadObject //: public
{
    public:
        // Конструктор
        CThreadObject ()
        {
            m_hThread            = NULL;
            m_bIsCreated        = FALSE;
        }

        // Деструктор
        virtual
        ~CThreadObject ()
        {
            ExitAndDestroy (TRUE);
        }

        // Выход из потока и закрытие описателя потока.
        _FORCEINLINE
        BOOL_MAXIMUM ExitAndDestroy (ULONG_MAXIMUM ulmExitCode)
        {
            ::ExitThread ((DWORD) ulmExitCode);

            if (::CloseHandle (m_hThread))
            {
                m_hThread = NULL;
                m_bIsCreated = FALSE;

                return (TRUE);
            }

            return (FALSE);
        }


ExitThread:

When this function is called (either explicitly or by returning from a thread procedure), the current thread's stack is deallocated, all pending I/O initiated by the thread is canceled, and the thread terminates.

То есть функция завершит текущую нить (ту, в которой вызван деструктор, а не m_hThread) и никогда не вернет управление.
Re[2]: Некоторые заголовочные файлы
От: roman313  
Дата: 04.03.20 07:44
Оценка:
Да, точно, надо доработать. Проверку поставить
Отредактировано 04.03.2020 7:46 roman313 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.