Size: a a a

2020 November 27

z

zamtmn in Delphi & Lazarus
Не спорю, факторов куча
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
Добрый день!
Подскажите пожалуйста в чем ошибка/как правильно передавать объекты в поток;
GetSM := TGetSystemMagnetic.Create;-инициализация класса данных в гуи ОК
ReadSM(GetSM);-заполнение класс данных в гуи ОК
MainThread := TMainThread.Create(GetSM,...-передача в поток ОК
constructor TMainThread.Create(GetSM:
FGetSM := GetSM;
- при создании потока FGetSM-ОК
procedure TMainThread.Execute;-в этом месте данные пропадают
источник

AS

Alexey Shumkin in Delphi & Lazarus
Сергей Пятыгин
Добрый день!
Подскажите пожалуйста в чем ошибка/как правильно передавать объекты в поток;
GetSM := TGetSystemMagnetic.Create;-инициализация класса данных в гуи ОК
ReadSM(GetSM);-заполнение класс данных в гуи ОК
MainThread := TMainThread.Create(GetSM,...-передача в поток ОК
constructor TMainThread.Create(GetSM:
FGetSM := GetSM;
- при создании потока FGetSM-ОК
procedure TMainThread.Execute;-в этом месте данные пропадают
Код покажи
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
источник

AS

Alexey Shumkin in Delphi & Lazarus
Сергей Пятыгин
Pastebin лучше, если не жалко "всем" раздать
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
Alexey Shumkin
Pastebin лучше, если не жалко "всем" раздать
Это видимо значить сделать архив всего проекта и скинуть в канал?
источник

AS

Alexey Shumkin in Delphi & Lazarus
Сергей Пятыгин
Это видимо значить сделать архив всего проекта и скинуть в канал?
Это значит, что есть сервис, в который ты пуляешь файл, указывая язык программирования, а он тебе выдаёт красивый хтмл с подсветкой синтаксиса и нумерациец строк.. на основе чего уже можно обсуждать код широкому кругу лиц, не имея редактора кода под рукой, например
источник

AS

Alexey Shumkin in Delphi & Lazarus
Сергей Пятыгин
Это видимо значить сделать архив всего проекта и скинуть в канал?
источник

AD

Aleksandr Duduk in Delphi & Lazarus
Сергей Пятыгин
В поток передаешь ссылки на созданные объекты, а потом уничтожаешь объекты, естественно их не будет
источник

AD

Aleksandr Duduk in Delphi & Lazarus
Сергей Необходимо не уничтожать объекты, а присваивать им ссылку nil. а уже в потоке освобождать. Вариант 2. В потоке создавать объект (или клонировать) на основе переданной ссылки
источник

z

zamtmn in Delphi & Lazarus
тут прям такие тяжелые расчеты что их необходимо вынести в поток?
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
Aleksandr Duduk
В поток передаешь ссылки на созданные объекты, а потом уничтожаешь объекты, естественно их не будет
Спасибо, понятно.
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
zamtmn
тут прям такие тяжелые расчеты что их необходимо вынести в поток?
Это нановерсия всего остального.
источник

AD

Aleksandr Duduk in Delphi & Lazarus
Сергей Пятыгин
Спасибо, понятно.
А вообще по большому счету эти объекты нафиг не нужны в главном потоке, создавай их в TMainThread и читай данные через синхронизацию
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
Aleksandr Duduk
А вообще по большому счету эти объекты нафиг не нужны в главном потоке, создавай их в TMainThread и читай данные через синхронизацию
Вот знания этого мне и не хватло/хватает... Ну и по классике жанра: можете просто пример по чтению гуи из потока через синхронизацию?
источник

AD

Aleksandr Duduk in Delphi & Lazarus
Сергей Пятыгин
Вот знания этого мне и не хватло/хватает... Ну и по классике жанра: можете просто пример по чтению гуи из потока через синхронизацию?
http://www.delphi-manual.ru/synchronize.php как самое простенькое
источник

z

zamtmn in Delphi & Lazarus
Данные нужно хранить не в гуе, небудет нужы из него читать
источник

z

zamtmn in Delphi & Lazarus
пару дней назад вроде проходили про мух отдельно от котлет (бизнес от гуя)
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
zamtmn
пару дней назад вроде проходили про мух отдельно от котлет (бизнес от гуя)
Верно, для этого создан класс данных. Вот его то и передаю в поток. Я что то не так делаю?
источник

z

zamtmn in Delphi & Lazarus
незнаю))
источник