Total Commander Knowledge Base

Есть вопрос?

Поищите ответ в самой большой русскоязычной базе знаний по Total Commander!

Фоновый поиск

Q: Гислер вообще когда-нибудь сделает поиск файлов по Alt+F7 в фоновом режиме (чтобы можно было продолжать работу), а не модально?
A: Когда-то, может, и сделает. Этот вопрос регулярно поднимается на оф. форуме раз в месяц, и так же регулярно задавшего этот вопрос посылают в поиск.

Поиск файлов отличается от простого копирования/перемещения тем, что он не потокобезопасен. Т.е. многие архиваторы (тот же RAR) и архиваторные плагины начинают дико глючить, когда к ним происходит два обращения из разных потоков - они не умеют обрабатывать такие ситуации, в результате все данные перемешиваются. Если бы фоновый поиск был реализован, то была бы возможна такая ситуация: выполняется поиск внутри, скажем, какого-то RAR-архива. В это время ты заходишь в самом Тотале внутрь другого RAR-архива. И всё падает. Потому что происходит несколько обращений в функцию распаковки, причём с разными исходными файлами (из разных потоков), а функция трактует их как обычные последовательные действия одного потока. Ну и начинает твориться полное безобразие...

На данный момент, единственный надёжный способ работы с Тоталом во время поиска - это запуск второй копии. Также можно использовать сторонние наработки, которые активизируют окно TC. Разумеется, все они неофициальные и могут использоваться исключительно на свой страх и риск.

В целом, надежда на создание фонового поиска есть. В качестве возможного варианта Гислер видит следующий: запускать программно отдельную копию Тотала, которая будет выводить только диалог поиска. Это решит проблемы потокобезопасности, но появляются новые проблемы - например, с передачей результата поиска в панель (Feed to listbox)...

Константин Власов