Тема: Потоки
Показать сообщение отдельно
  #2  
Старый 20.05.2008, 20:16
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Тебе TThread?

Ну, собственно, проблема в том, что в общем случае из потока на экран лучше вообще ничего не показывать. Хотя если очень хочется, то можно (см. в сторону Canvas.Lock и Synchronize).

В общем теория такова.
Поток, по сути это некоторая процедура, которая выполняется независимо от основной программы (оносительно независимо). Мастер Дельфей создает для тебя обертку - потомок от TThread, в котором тебе надо собственно реализовать содержимое этой самой функции.

Для упрощения можно представить, что поток - это некоторая отдельная программа, выполняющаяся паралельно с твоей основной. Но программа, НЕ ИМЕЮЩАЯ ОКНА. Т.е. ты там можешь делать все, что угодно, но для вывода на экран ты должен будешь обратиться к основной программе.

Потоки делают 2х видов.
1. Для однократного выполнения. Такой поток выполняет задачу и самоуничтожается.
2. Поток, который работает постоянно. В этом случае, обычно, поток создается при старте приложения, уничтожается вместе с приложением. в процессе работы приложения может быть "усыплен", а потом восстановлен. Управление таким потоком обычно осуществляется с помощью его свойств.

Еще надо посмотреть в сторону объектов синхронизации, т.е. объектов, обеспечивающих защиту данных. CriticalSection тебе тут в помощь.

Если кратко, то это все. А дальше смотри примеры, читай хелп и пробуй.
Целый учебник тут писать никто не будет.
Ответить с цитированием