|
|
|
RAD XE3+ Вызов события из "Синхронизатора" потока, не нарушится ли синхронизация?27.02.2019, 14:42. Показов 1495. Ответов 5
Метки нет (Все метки)
Привет всем,
с потоками я работал по сей день таким образом, что данных было у меня всегда не много и что я прямо из синхронизатора выводил в нужный контрол данные, сейчас жизнь немножко изменилась и данных поприбавилось, их теперь порядка 50-60 значений, оформленных в структуру и они должны быть не привязаны из потока к конкретным контролам... крутил - вертел ситуацию и придумалось, что если я буду в синхронизаторе вызывать событие, которое в главной программе типа как синхронизированно вызваться должно будет и в том событии уже буду писать данные из структуры в нужные мне контролы. Действительно ли это так будет? По логике, я передам управление прямо из синхронизатора в основную программу и там в уже засинхронизированном состоянии я заберу эти переданные данные.
0
|
|
| 27.02.2019, 14:42 | |
|
Ответы с готовыми решениями:
5
Вызов события из другого потока Вызов события нажатия кнопки из другого потока Вызов события из потока: ошибка доступа к элементу управления |
|
882 / 404 / 173
Регистрация: 20.10.2016
Сообщений: 1,828
|
|
| 27.02.2019, 14:51 | |
|
Все, что делается внутри вызванной с synchronize процедуры будет выполнено в основном потоке. Включая вызов других процедур.
0
|
|
|
|
|
| 27.02.2019, 15:16 [ТС] | |
|
Меня это и смущает, что вызов события, это вызов функции по адресу, а не явно. Произойдет ли вызов корректно, но если Synchronize действительно, связана с основным потоком, то скорее всего такой вызов будет тоже корректен
0
|
|
|
882 / 404 / 173
Регистрация: 20.10.2016
Сообщений: 1,828
|
|
| 27.02.2019, 16:17 | |
|
Ответ прост: будет ли продолжаться выполнение кода в синхронизированной процедуре параллельно вызванному событию? А если это событие - функция, и нам надо получить результат её работы? Ответ очевиден. Поэтому в синхронизированной процедуре все вызовы (если, кстати, я не ошибаюсь, то "явный" вызов процедуры - это тоже вызов её по адресу, если нет директивы inline) вложенных процедур и событий будут выполняться в основном потоке.
0
|
|
|
|
|
| 27.02.2019, 17:48 [ТС] | |
|
Я просто неохотно делаю то, что я не знаю как работает в корне)) оттуда и дотошные вопросы у меня постоянно. Опыт мой вроде увенчался успехом, сразу в боевых условиях пробовал сидя на корточках, прогал кусок кода в серверном помещении
там так холодно бррр
0
|
|
|
|
|
| 27.02.2019, 23:37 | |
|
событие - это оно для вас событие )
а для класса это простой метод поэтому выполнен он будет совершенно обычно событием он называется потому что вызывает его кто-то "извне" для вашей программы а точнее - главный цикл обработки сообщений вы тоже можете его вызывать совершенно спокойно никакой магии в этом нет параллельно ничего в программе без вас не выполняется если выполняется ваш код, значит обработчик очереди НЕ выполняется и наоборот )
0
|
|
| 27.02.2019, 23:37 | |
|
Помогаю со студенческими работами здесь
6
Unity C#. Вызов события в главном потоке из вторичного потока
Вызов события из другого события по нажатию клавиши Синхронизация потока Синхронизация потока Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита, которое может. . .
|
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
На примере нетипового документа разработанного в конфигурации КА2.
В качестве источника данных указан регистр накопления, в который записываются данные о. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
|
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-text-sdl3-c. zip
finish-text-sdl3-cpp. zip
|