Вот этим кодом открываю диалоговое окно открытия файла
Когда вхожу в папке чувствуется торможение в 1-1.5 сек что я считаю ненормальном на новом двухядерном процессоре
Когда открываю ту же диалоговое окно открытия файла в MS Word или другие программы папки открываются(моментально) за доли секунды.
Да, я замечал такое за этим стандартным диалогом. Это либо значит что диск сетевой, либо другие диалоги открываются быстро потому что где-то в системе этот список закэширован (потому что все кроме явы используют средства эксплорера).
I want to Believe!
They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
Да, я замечал такое за этим стандартным диалогом. Это либо значит что диск сетевой, либо другие диалоги открываются быстро потому что где-то в системе этот список закэширован (потому что все кроме явы используют средства эксплорера).
Диск локальный - а сам винчестер очень скоростной 104МБ/сек
И в Делфи и в програмах сделанных на С++ диалог работает очень быстро - а Java он заметно тормозной
Путей решения не много.. думаю придётся написать этот диалог либо зареюзать чей-то.
Вообщето есть зипы но далеко не во всех папках а тормозит открытие всех папок подряд но только не 10сек как написано в указанной статье а всего 1-2сек
попробовал отключить встроенный zip как предложенно
To disable zip stuff:
regsvr32 /u %windir%\system32\zipfldr.dll
to enable it (if you want it back)
regsvr32 %windir%\system32\zipfldr.dll
Помогло но не радикально - латентность немного пропала но если папка имеет много файлов то слышен звук винта на пару секунд (макс 2сек) - тоесть видно не идет кэширование файлов - такого нет в Explorer и програм типа Word Excel Notepad видимо они используют средства WinApi.
Кстати как из жава вызывать функции WinApi может примерчик есть?
НИКОГДА не используйте JNI без КРАЙНЕЙ необходимости. Это большое зло. Тем более что как я понимаю вы хотите делать это для прикладных задач.
Ещё раз повторюсь: НИ НИ! НЕ делайте этого. Либо не юзайте тогда Java вообще, либо используйте и работайте до самого конца в Java.
В задачах планирую использовать классы оболочки таким образом прикладная программа не будет страдать а при глюках уже будем думать и использовать уже встроенные возможности в ущерб скорости