|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.10.2015, 21:59 | #11 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
И потоками, и процессами (потоками разных процессов). Обычно процессами, ибо для потоков внутри одного приложения есть более удобные вещи.
А семафор от мьютекса не этим отличается.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 27.10.2015 в 22:06. |
27.10.2015, 22:07 | #12 |
Форумчанин
Регистрация: 13.08.2015
Сообщений: 193
|
Вообще от вспомнилось что можно между процессами делать общие данные. Хорошо бы чтобы одна программа считала данные из файла и к ним могли бы обратиться другие программы. Типо сделать как в потоках глобальные данные.
|
27.10.2015, 22:10 | #13 |
Форумчанин
Регистрация: 13.08.2015
Сообщений: 193
|
а как сделать через мутекс ? Нашол пример кода
Код:
Щас смоделирую, запусщю две программы одной заблокирую, а другой попробую прочитать файл и что то мне кажется она прочитает файл |
27.10.2015, 22:13 | #14 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Задача-то исходная в чем состоит? Что за извращение вы пытаетесь сделать с файлом и процессами?
http://www.gunsmoker.ru/2008/10/x-y-z.html А синхронизация нужна для любых ресурсов используемых разными потоками, не только файлов. Цитата:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 27.10.2015 в 22:17. |
|
27.10.2015, 22:18 | #15 | |
Форумчанин
Регистрация: 13.08.2015
Сообщений: 193
|
Цитата:
протестим. Вот код тестовый, блокирую как бы код, а из копии программы также вызывает вывод dddd, а должно вызывать что заблокировано. Код:
Последний раз редактировалось ninja2; 27.10.2015 в 22:29. |
|
27.10.2015, 22:30 | #16 | |
Форумчанин
Регистрация: 13.08.2015
Сообщений: 193
|
Цитата:
Да работает, нужно чтобы поток владельшем не был и идентификатор задать. Код:
Последний раз редактировалось ninja2; 27.10.2015 в 22:37. |
|
27.10.2015, 22:34 | #17 | |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
Цитата:
вот вам даже пример решения схожей с вашей задачи с помощью мьютекса (правда на плюсах, но суть та же) http://www.firststeps.ru/mfc/winapi/r.php?9 p.s. блин, все обсуждение пропустил)
Благодарить в репутацию. Проклинать — туда же
|
|
27.10.2015, 22:41 | #18 |
Форумчанин
Регистрация: 13.08.2015
Сообщений: 193
|
Да ты прав, все отлично работает.
Хорошо бы еще как то переменную создать к которой смогут обращаться процессы. Мб. кто то знает как такое сделать. От допустим запускаем одну копию программы и создается переменная. Запускаем вторую копию программы и она видит эту переменную и использует ее. типо эмитация потоков. Какждый раз файл читать не сильно мб. удобно, проще в памяти хранить массив с данными и в нем уже шарить. ))) |
27.10.2015, 22:48 | #19 | |
Форумчанин
Регистрация: 13.08.2015
Сообщений: 193
|
Цитата:
В потоках это проще сделать. Читал в книге что есть механизм что что можно и между процессами даными обмениваться он как то называется email-адресация или хз. То книга старая была 2003 год, щас уже 2015, наверняка есть что то. Как создать общую переменную между процессами? |
|
27.10.2015, 22:50 | #20 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Блокирование события | Gagapsha | JavaScript, Ajax | 5 | 19.02.2014 18:06 |
Блокирование файла | Balabek | Общие вопросы C/C++ | 10 | 20.07.2012 14:27 |
Блокирование ALT+F4 | Killbrum | Win Api | 5 | 14.03.2009 12:23 |
Блокирование клавиатуры | Milly | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 18.10.2007 19:15 |
блокирование функции | Fireleo | Win Api | 5 | 29.07.2007 17:04 |