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

Использование несколькими потоками одной функции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Оптимизация кода игры в крестики нолики. http://www.cyberforum.ru/cpp-beginners/thread946452.html
Написал небольшой код буду благодарен если нормальные программисты порекомендуют как его нужно исправить. это игра в крестики нолики 10*10. ниже привожу файлы. Board.cpp #ifndef _Board_ #define _Board_ #include <iostream> #include "board.h" #endif using namespace std;
C++ Имя экземпляра объекта внутри класса на С++ Добрый день. Подскажите, пожалуйста, как узнать имя экземпляра объекта внутри класса на С++ ? В частности, мне надо имя экземпляра объекта печатать на экран. http://www.cyberforum.ru/cpp-beginners/thread946447.html
C++ Разница между С и С++
Если не брать во внимание объекты и классы, то разница состоит только лишь в cin, cout и директивах?
C++ Рекурсивные функции
1. Написать рекурсивную функцию, которая бы вычисляла n-тое число Фибоначчи. 2. Написать рекурсивную функцию которая печатает элементы массива в обратном порядке.
C++ Принципы отладки в MVS 2012 http://www.cyberforum.ru/cpp-beginners/thread946414.html
Привет киберфорумцы! Подскажите пожалуйста, как в режиме отладки путешествовать только по написанному мной коду не, заходя в файлы предоставляемые MVS? А то начинаешь искать ошибку, выставив точку останова, для того, чтобы отследить поведение некоторых переменных внутри функции, тыкаешь Ф11 (чтобы перепрыгнуть из мейн в функцию), а забрасывает в какой-нибудь бесконечный ostream или...
C++ Присвоение значения указателю Как можно, вот так, присваивать указателю значение? Разве, указатель не должен всегда содержать адрес? const char* szString = "Randy"; подробнее

Показать сообщение отдельно
Dmitriy_M
1294 / 1175 / 104
Регистрация: 20.03.2009
Сообщений: 4,210
Записей в блоге: 11
31.08.2013, 23:49     Использование несколькими потоками одной функции
Цитата Сообщение от Убежденный Посмотреть сообщение
Это еще почему ?
Потому что не thread-safe.
Описание с http://www.cplusplus.com/
The function accesses and modifies internal state objects, which may cause data races with concurrent calls to rand or srand.

Some libraries provide an alternative function that explicitly avoids this kind of data race: rand_r (non-portable).

C++ library implementations are allowed to guarantee no data races for calling this function.
В POSIX об этом сказано явно
The function rand() is not reentrant or thread-safe, since it uses hidden state that is modified on each call. This might just be the seed value to be used by the next call, or it might be something more elaborate. In order to get reproducible behavior in a threaded application, this state must be made explicit; this can be done using the reentrant function rand_r().
 
Текущее время: 09:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru