Многопоточность

Тема в разделе "MS Visual C++", создана пользователем GRAMER, 21 апр 2008.

  1. GRAMER

    GRAMER Гость

    Что это такое многопоточность
    это CreateThread() Что ли ? :lol:
     
  2. Yason

    Yason Гость

  3. grigsoft

    grigsoft Well-Known Member

    Регистрация:
    15 ноя 2005
    Сообщения:
    735
    Симпатии:
    0
  4. GRAMER

    GRAMER Гость

    Оно и есть CreateThread

    Спасибо так и думал.
    Сегодня статью читал у Intel типа сложно - многопоточность, этоже проше простого уже долго использую
     
  5. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Только в VC++ лучше вместо CreateThread использовать _beginthreadex, только там с типы параметров немного отличаются. Для простоты использования можно использовать макрос:
    Код (Text):
    #define chBEGINTHREADEX(psa, cbStack, pfnStartAddr, \
    pvParam, fdwCreate, pdwThreadID) \
    ((HANDLE) _beginthreadex( \
    (void *) (psa), \
    (unsigned) (cbStack), \
    (PTHREAD_START) (pfnStartAddr), \
    (void *) (pvParam), \
    (unsigned) (fdwCreate), \
    (unsigned *) (pdwThreadID)))
    Тогда вместо CreateThread достаточно написать chBEGINTHREADEX (параметры останутся те же).

    И ещё. В многопоточном приложении могут возникнуть проблемы с совместным доступом разных потоков к одному и тому-же ресурсу (например, к глобальной переменной). На тему многопоточности, синхронизации потоков, да и вообще программирования под Windows, советую почитать Рихтера (макрос я взял как раз оттуда).
     
  6. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Обоснуйте
     
  7. Pasha

    Pasha Гость

    European
     
  8. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Pasha, это понятно. Где связь CRT и VC++?

    Я имел в виду, что речи о CRT не шло, и тут "луше использовать..."
     
  9. biz

    biz Гость

    Клевая штука эта многопоточность......
     
  10. Pasha

    Pasha Гость

    European
    Лучше использовать - IMHO лучше сразу обойти возможные грабли :)
     
  11. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
  12. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Я так и думал, что основным аргументом будет книжка Рихтера
     
  13. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    А он что, не прав? Я ж не говорю, что CreateThread работать не будет. Просто лучше использовать именно _beginthreadex во избежание возможных проблем.
     
  14. erbi

    erbi Гость

     
Загрузка...
Похожие Темы - Многопоточность
  1. 123456789igor
    Ответов:
    0
    Просмотров:
    923
  2. Vadik(R)
    Ответов:
    1
    Просмотров:
    1.416
  3. sanch
    Ответов:
    2
    Просмотров:
    3.069

Поделиться этой страницей