Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.05;
Скачать: CL | DM;

Вниз

Строки и потоки   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.048 c
15-1160890676
Kair+
2006-10-15 09:37
2006.11.05
Вопрос по C++


15-1160605343
learner
2006-10-12 02:22
2006.11.05
SelectDirectory и новые нити в проекте


6-1150209045
Leshik
2006-06-13 18:30
2006.11.05
TIdIRC


15-1161085200
Маска
2006-10-17 15:40
2006.11.05
Firewall


15-1160597254
iZEN
2006-10-12 00:07
2006.11.05
Ищу песни.