![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 27.10.2017
Сообщений: 54
|
![]()
добрый день подскажите, есть поток
Код:
Если в основном, то как ее выполнить в созданом потоке ?( В TMyThread) |
![]() |
![]() |
![]() |
#2 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
В нём же.
А если нужно из основного, то для этого используем Synchronize.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 27.10.2017
Сообщений: 54
|
![]() Цитата:
Пример Код:
Процедуру через Synchronize(LogError) вызвать не получается из Scan... Или обращаться к визуальным компонентам (изменять их значения) лучше только из procedure TMyThread.Execute; ? Последний раз редактировалось remus-xe2; 27.10.2017 в 14:32. |
|
![]() |
![]() |
![]() |
#4 | ||
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]() Цитата:
Если надо вернуть данные. То самый простой способ таймер на форму и глобальный массив результатов. Потоки складывают результаты в массив каждый в свою ячейку. А таймер периодически читает результаты и выводит. Так же можно использовать мьютексы и критические секции. К примеру при обновлении прогресс-бара защёлкиваем мьютекс изменяем значение прогресса и открываем мьютекс. Мьютекс должен быть общий для всех потоков. Цитата:
Метод Synchronize объявлен как "class procedure" это означает что она может вызываться без создания объекта.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разработайте программу работы с односвязным списком. Программа должна содержать следующие процедуры, вызываемые из меню | Nika1997 | Общие вопросы Delphi | 12 | 08.03.2015 22:46 |
Как получить доступ к методу потока(TThread) из основного потока? | Pcrepair | Общие вопросы Delphi | 3 | 30.03.2013 14:52 |
Должно быть 3 потока. А диспетчер задач показывает, что потока создано 2 | BEL9ILLI | Общие вопросы Delphi | 3 | 06.12.2011 20:26 |
Потоки: неверный дескриптор(6) при создании потока | [MoNAMur] | Общие вопросы Delphi | 4 | 08.11.2011 12:05 |
Как узнать номер потока из самого потока? | GaMeSTeR | Помощь студентам | 0 | 03.12.2010 09:50 |