Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];
ВнизСтроки и потоки Найти похожие ветки
← →
Steep © (2006-10-20 10:15) [0]Можно ли сделать сортировку в отдельном потоке с выводом прогресса?
вобще возможно это используя TList (TStringList).Sorted := true;?
PS С потоками еще не делал программы, токо начал изучать..
← →
Сергей М. © (2006-10-20 10:22) [1]
> возможно это используя TList (TStringList).Sorted := true;
> ?
Нет.
Но возможно при использовании CustomSort()
← →
Steep © (2006-10-20 10:25) [2]
> возможно при использовании CustomSort()
В справке примеры есть? (просто делфи под рукой нет)
← →
Сергей М. © (2006-10-20 10:29) [3]Да, есть.
← →
ЮЮ © (2006-10-20 10:39) [4]Даже демо прилагается:
C:\Program Files\Borland\Delphi7\Demos\Threads
← →
Steep © (2006-10-20 10:39) [5]Пасип!
← →
MsGuns © (2006-10-20 10:42) [6]>Steep © (20.10.06 10:15)
>Можно ли сделать сортировку в отдельном потоке с выводом прогресса?
вобще возможно это используя TList (TStringList).Sorted := true;?
Можно. Для этого надо создать поток, передать ему указатель на TList.
В потоке создать свой список, переписать туда содержимое исходного списка и выполнить сортировку, при этом в процедуре CustomSort, по значению индекса "рисовать" прогресс в контроле формы-инициатора потока, использую Synchronize.
По завершению сортировки, новый список переписать в исходный (в Synchronize), свой прибить.
Если исходный список никак не обрабатывается в процессе выполнения потока (например, информация из него не визуализируется в стрингриде или листвью по каким-то "своим" событиям), то создавать новый список нет необходимости, поток "смело" может оперировать "оригинальным" списком. В этом случае надо лишь позаботиться о блокировке одновременного запуска нескольких сортировок (например, используя семафоры)
Рекомендую почитать про потоки у Кэнту или Тексейры. Довольно доступно и исчерпывающе.
← →
Steep © (2006-10-20 10:46) [7]
> почитать про потоки у Кэнту или Тексейры
А как книжка называеться?
> MsGuns ©
Огромное спасибо!
← →
Anatoly Podgoretsky © (2006-10-20 12:54) [8]
> Даже демо прилагается:
Там даже три массива одновременно сортируются.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.058 c