Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Потоки С++ под Windows

13K
29 июля 2006 года
Mad Kit
18 / / 19.07.2006
Два вопроса:
1) Нужно ли использовать мьютексы под виндой или нет? если да то как?

2) Как прибить поток из основного процесса(тоесть из функции main)?
398
29 июля 2006 года
Alexandoros
630 / / 21.10.2005
1)В с++ нету потоков. Потоки есть в виндовсе.
1.2) Для потоков мутехи не нужны, юзай критсекции. Для процессов - нужны
2)ЛИбо послать ему сообщение об окончании работы, и поток сам завершится, либо TerminateThread
354
29 июля 2006 года
ШпиЁн
468 / / 19.02.2006
Может автор имел в виду не CreateThread из винды, а библиотечную сишную _beginthreadex? :-)))
398
29 июля 2006 года
Alexandoros
630 / / 21.10.2005
Ну, он сам уже придет и объяснит, чего хотел :)
13K
30 июля 2006 года
Mad Kit
18 / / 19.07.2006
Я имел ввиду именно CreateThread.
То есть если у меня есть функция работающая с данными то можно не боятся что главный процес и поток вызовут ее одновременно и одновременно попытаются изменить данные?
А что такое критсекции? и как они пишутся на английском?
354
30 июля 2006 года
ШпиЁн
468 / / 19.02.2006
Critical Section - критическая секция.

MSDN:
Цитата:

Critical section objects provide synchronization similar to that provided by mutex objects, except that critical section objects can be used only by the threads of a single process. Event, mutex, and semaphore objects can also be used in a single-process application, but critical section objects provide a slightly faster, more efficient mechanism for mutual-exclusion synchronization (a processor-specific test and set instruction). Like a mutex object, a critical section object can be owned by only one thread at a time, which makes it useful for protecting a shared resource from simultaneous access.



В общем, если по простому - критические секции обеспечивают синхронизацию при доступе к какому либо ресурсу. Этот объект может использоваться только ОДНИМ потоком, что делает критические секции полезными для защиты общего ресурса от одновременного доступа.

MSDN рулит как всегда :-))))

искать нужно в сторону EnterCriticalSection, LeaveCriticalSection, InitializeCriticalSection и т.д....

5.9K
31 июля 2006 года
Zushenskiy
161 / / 29.06.2006
Более правельным решением синхронизации потоков будет использовании объктов Event. Объекты Event представляют более гибкую синхронизацию потоков, в простейшем случае ты можешь задавать время которое будет ждать твой поток занятый ресурс другим потоком.
3
31 июля 2006 года
Green
4.8K / / 20.01.2000
Да можно использовать любой объект синхронизации, но критическая секция быстрее.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог