Форум программистов, компьютерный форум, киберфорум
Наши страницы

реализация ThreadSafe функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ написание программ http://www.cyberforum.ru/cpp-beginners/thread928097.html
В С++ программы пишутся так же, как в делфи типа с сбрасыванием компонентов на форму с события свойствами в инспекторе объектов или по другому ?
C++ Форматирование текста всем привет. Дан текстовый файл, который содержит строки различной длины. Создайте новый файл, в котором сохраните исходный текст в отформатированном виде, т.е. в тексте не должно быть строк... http://www.cyberforum.ru/cpp-beginners/thread928068.html
1. Найти наименьшее из чисел а1, 2а2, 3а3,…, 8а8 C++
Найти наименьшее из чисел а1, 2а2, 3а3,…, 8а8
C++ Программа, которая будет издавать звуки при обнаружении заданного числа, чисел, последовательности чисел на страницах браузера.
Здраствуйте, уважаемые форумчане. Обращаюсь к вам за помощью: Мне нужна программа, которая будет издавать звуки при обнаружении заданного мной числа, чисел, последовательности чисел на страницах...
C++ обьясните пожалуйста! http://www.cyberforum.ru/cpp-beginners/thread928026.html
1111 = 15 & 1001 = 9 1001 = 9 Результат равен 9. как 1111 = 15? как 1001 = 9?
C++ Шаблонная функция параметры Подскажите, где можно посмотреть перечень возможных команд в шаблонных функциях вроде: template <class InputIterator, class T> typename iterator_traits<InputIterator>::difference_type count... подробнее

Показать сообщение отдельно
smithana
2 / 2 / 0
Регистрация: 03.06.2009
Сообщений: 102
25.07.2013, 13:52  [ТС]
Вроде бы понял.
Спасибо большое за книжку, почитаю.

Добавлено через 20 часов 34 минуты
подумав, понял что инициализацию и удаление надо из функций выносить и решил сделать так:
1. Переменные критических секций поля класса.
2. Инициализация при открытии устройства.
3. Использование в функциях.
4. удаление в функции закрытии устройства.
В коде получается так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class my_class{
public:
    CRITICAL_SECTION g_cs;
 
    void open();
    void function();
    void close();
};
 
void my_class::open(){
  //Открытие устройства
  InitializeCriticalSection(&g_cs);
}
 
void my_class::function(){
  EnterCriticalSection(&g_cs);
  int a = 5;
  LeaveCriticalSection(&g_cs);
}
 
void my_class::close(){
  DeleteCriticalSection(&g_cs);
  //Закрытие устройства
}
есть ли слабые места у этого способа?
Спасибо.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.