Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
#1

Мьютекс в чем ошибка - C++

23.01.2012, 22:54. Просмотров 403. Ответов 2
Метки нет (Все метки)

Пытаюсь разобраться с мьютексом. Первым делом пытаюсь определить копия запущена приложения или нет. Вот код.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <windows.h>
#include <iostream>
 
using namespace std;
  
HANDLE hMutex;
   
int main( void )
  {
     hMutex=OpenMutex(MUTEX_ALL_ACCESS, FALSE, "htmx");
         if (hMutex==0) 
       hMutex = CreateMutex( NULL, FALSE, "hmtx" );
         else cout<<"Это копия";    
     return 0;
  }
То есть пытаюсь открыть мьютекс. Если удалось значит копия, если нет значит создаем. Что не так делаю или может не так что понял?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2012, 22:54     Мьютекс в чем ошибка
Посмотрите здесь:

Синхронизация мьютекс - C++
Привет, на данный момент пытаюсь научиться пользоваться синхронизацией. Есть такой код: #include &lt;iostream&gt; #include &lt;chrono&gt; ...

потоки, мьютекс и семафор - C++
Вот задание: Выполнить индивидуальное задание параллельным алгоритмом (обязательно использовать для разграничения общих ресурсов мьютексы...

Межпроцессорный мьютекс linux - C++
Вопрос. В Windows при создании мьютекса CreateMutexA(NULL,false,&quot;NameOfMyMytex&quot;) - создаётся мьютекс, который может использоваться для...

Мьютекс в обёртке стека - C++
Читаю книгу Уильямса Параллельное программирование на С++. Там приводится пример создания безопасного стека. При прочтении возник вопрос...

C++11,mingw 4.7.2 Мьютекс не тип из std - C++
'mutex' in namespace 'std' does not name a type так-же ругается и на thread но асинхронность хавает. И фьюче тоже хавает. компилю...

Мьютекс, не могу понять, сигналирован или нет - C++
Разработать программу, состоящую из двух потоков, работающих с общими данными, первый поток вводит с клавиатуры N целых чисел (число N...

Вызвать notify() когда мьютекс захвачен или освобожден? - C++
Если ли какая то важная разница, где вызывать std::condition_variable::notify()? То есть, вот два куски кода: 1) lock_guard &lt;mutex&gt;...

в чем ошибка? - C++
#include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int _tmain(int argc, _TCHAR*...

В чем ошибка? - C++
В чем ошибка там, где подчеркнута строка желтым? Я так понял, там что-то про сочетание констант и логических значений типа &quot;bool&quot;, что...

В чем ошибка? - C++
#include &lt;iostream&gt; #include &lt;string&gt; using std::string; int main() { string str1 = &quot;axhfkshfnd&quot;; int g = 0; while...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Teravisor
30 / 30 / 3
Регистрация: 07.08.2011
Сообщений: 89
23.01.2012, 23:05     Мьютекс в чем ошибка #2
"htmx" == "hmtx"? Ключи разные, это нормально?
Плюс такой программой проверить что-то сложно, одна может запуститься и завершиться до того, как вторая вообще дойдет до открытия мьютексов.
Если я что-то не так сказал - Что конкретно не так то?
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
23.01.2012, 23:07  [ТС]     Мьютекс в чем ошибка #3
Ахаха) Точно разные имена. Как не внимательно. Ну я еще в конце getch() ставлю, просто тут не написал. А так спасибо, теперь все работает. Буду дальше изучать.
Yandex
Объявления
23.01.2012, 23:07     Мьютекс в чем ошибка
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru