![]() |
| | |||||||
| Регистрация | Правила | Блоги | Пользователи | Социальные группы | Поиск | Сообщения за день | Все разделы прочитаны |
| |
![]() |
| |
| | #1 | |
| __bool Форумчанин Регистрация: 13.06.2010 Адрес: Екб
Сообщений: 725 Репутация: 270 (211) |
По окончанию работы потока необходимо создавать на форме определенное количество TButton'ов, с определенными параметрами.. Как быть? Создавать их в самом потоке или же каким-то образом вернуть основному потоку(главному) информацию о предстоящей задаче и создать их в основном? Добавлено через 14 часов 0 минут Можно ли в дочернем потоке создавать визуальные vcl-объекты? Если да, то, что лучше использовать критические разделы или мьютексы Кто знает, прошу поделиться опытом | |
| | ||
| Другие темы раздела | |
| Тип данных float C++ Builder Здравствуйте. У меня проблема с типом данных. С текстового файла я считываю цифры типа 0.00300, 0.014500 и т.д. Затем мне нужно выполнить с ними операцию умножения и закинуть полученное в Edit.float v1, st=0.2; v1=StrToFloat(StringGrid1->Cells); cen=v1*st; Edit1->Text=FloatToStr(cen);.... Тип данных float | Избавиться от vcl-тормозов C++ Builder Всем доброго времени суток. В кратце алгоритм программы такой: 1) Каждые 10 секунд IdHTTP грузит 5-10 страниц GET-запросом, Если на странице оказалась нужная информация, то: 2) Воспроизводится мелодия посредством BASS.DLL 3) Создаются кнопочки на главной форме Результат: Кнопки.... Избавиться от vcl-тормозов |
| | #2 | ||||||||||||||||
| _engineer_ Форумчанин Регистрация: 23.01.2012
Сообщений: 180 Репутация: 114 (71) |
VCL в большой мере не является потока безопасной библиотекой. Да еще если мне не изменяет память большинство компонентов выполняются только в контексте главного потока. От сюда вывод: не создавать в потоке компонент пока не найдете в документации, что он потоко безопасный. Мьютексы - самая медленная реализация синхронизации, но зато виден не только из своих потоков, но и из других процессов. Критические разделы - самая быстрая синхронизация. Критические разделы пример: Вот определения моего класса для работы с данными в потоке (остальной свой код удалил) hpp
cpp
| ||||||||||||||||
| | |||||||||||||||||
| После регистрации реклама в сообщениях будет скрыта | |
| | #3 | |
| __bool Форумчанин Регистрация: 13.06.2010 Адрес: Екб
Сообщений: 725 Репутация: 270 (211) |
Примерно так же делаю: Как то странно у меня темы переплелись.. Вот результат работы моей программы используя Критические секции Synchronize Передача параметров | |
| | ||
![]() |
| Похожие темы | |
| Тема | Автор |
| Delphi для начинающих Создать визуальный компонент Часы Создать визуальный компонент Часы, по умолчанию, показывающие системное время, содержащий свойство (+) Time с полями Hous , Minute. Значения этого свойства будут отображаться на форме в окне компонента. Cвойство Time – свойство, объект созданного вами класса. Создать свойство Часовой пояс, в... | juli.ya92 |
| Visual Basic как создать визуальный эфект Как создать визуальный эфект воспроизводимой музыки? Я сделал кое что но это не помне оно не сопровождается с музыкой а просто тупа переход по картинкам) Помогите плиз. Хотябы скажите как это сделать. Говорят с помошью библиотеки басс можно сделать но я не знаю как((((( | ilimdar |
| Delphi для начинающих Как создать визуальный эффект для плеера? Как создать визуальный эффект для плеера? | kentaw |
| ASP.NET При попытке создать объект obj=Server.CreateObject('Name.ClassName') Возникает ошибка, 'Объект не поддерживает это свойство или метод.' При попытке создать объект obj=Server.CreateObject('Name.ClassName') Возникает ошибка, 'Объект не поддерживает это свойство или метод.' А если на странице выставить язык <%@ Language=JScript %> То метод var obj = new ActiveXObject('Name.ClassName'); работает без проблем. | Maksim |
| Delphi Не могу создать Ole объект при создании нового потока TThread Я создаю экземпляр этого класса interface uses Classes,ShellCtrls,SysUtils,ComObj,Variants,ExtCtrls,Windows,shellapi, Messages, Graphics, Controls, Forms, Dialogs, StdCtrls, VCFI, ComCtrls; type TWordThread = class(TThread) private { Private declarations } | Fag2000@Ok.ru |
| Опции темы | |
| |
| |