|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
15.05.2016, 05:20 | #11 |
Форумчанин
Регистрация: 14.12.2012
Сообщений: 668
|
Ну и манеры у тебя товарищ RAFA91. От собственной важности голова не кружится? Ни спасибо, ни пожалуйста. Факты ему нужны, ну так иди и читай документацию.
|
15.05.2016, 07:13 | #12 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Гльков не будет (на то они и потоки). Каждый, в определёное время, получает квант времени на выполнение. Но, бывают "казусы". Два потока пишут в переменную рандом, а третий читает (вроде там про семафоры что-то говорили). У нас так программёры прикалывались ещё в 80-х. Я тогда, совсем "зелёный" был, но это запомнил, т.к. у них ухохотайчик не детский наблюдался. Больше к этому вопросу как-то не досуг было возвращаться, просто в теме воспоминания обуяли.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
15.05.2016, 10:03 | #13 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Цитата:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
15.05.2016, 11:57 | #14 | ||
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
Цитата:
данной проблемы. Пока найти не удалось... ___________________________________ ___ Такой вопрос. у меня общие данные для потоков лежат в в проецируемую область памяти. В этом случае надо делать защиту от совместного обращения ? Цитата:
только батенька мы дело имеем с несколькими ядрами и каждое со своим квантом. |
||
15.05.2016, 14:26 | #15 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Цитата:
то вот любые сложные применения переменной(global*=2), битовые поля, структуры(при наличии временного копирования в локальные) уже легко ломаются и могут вести себя непредсказуемо без синхронизации. (пол переменой записано от одного потока, половина от другого) + еще зависимость от выравнивания данных. ну и да, все это отработает для процессора одноядерного и без HT. и то, для ++ примера я бы предпочел InterlockedIncrement применить уж. а для структур, битовых полей или сложного применения переменной применять защиту через примитивы синхронизации(мютекс, КС, сигналы/события) Цитата:
простые переменные(флаги, счетчики) можно вполне не защищать или применять Interlocked функции для работы с ними. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 15.05.2016 в 14:29. |
|||
15.05.2016, 14:32 | #16 | |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
Цитата:
в устройстве ядра. дальше не читал - не вижу смысла ! Такой вопрос. у меня общие данные для потоков лежат в в проецируемую область памяти. В этом случае надо делать защиту от совместного обращения ? |
|
15.05.2016, 14:36 | #17 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Цитата:
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|||
15.05.2016, 14:46 | #18 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
|
15.05.2016, 14:51 | #19 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
я потому и написал про InterlockedIncrement, так как там есть нюансы.
размер переменной, левая пятка компилятора и прочее. ну или современный std::atomic. обычно...но не всегда. слишком много если. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
15.05.2016, 14:52 | #20 | |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Загрузка изображения или сылка на изображение | xakkkkker | Работа с сетью в Delphi | 5 | 14.01.2013 23:04 |
Печать на обеих сторонах | agregator | Microsoft Office Excel | 1 | 24.11.2010 11:03 |
php5 постоянная сылка на переменную | 13th | Свободное общение | 1 | 13.09.2010 18:15 |
Сылка на внешний файл в отчете | Iskin | Microsoft Office Access | 0 | 30.03.2009 08:03 |