[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cross-project-issues-dev] Observation: Frequent UI freezes when working with files

Marcel,

This seems to be very low level detail. Do you know or can you see if this relates to some higher level operation being performed from within in the UI thread which shouldn't? 

-Gunnar

> Am 10.12.2014 um 14:53 schrieb Marcel Bruch <marcel.bruch@xxxxxxxxxxxxxx>:
> 
> Hi,
> 
> I just want to share an insight I got from reviewing several ui freezes. One common cause for UI freezes are operations that touch the filesystem. For instance, File.isFile, File.lastModified, or WinNTFileSystem.getBooleanAttributes seem to be very expensive. From what I read on the internet it seems that some of these methods (e.g. getAttributes) may even take up to several seconds to return on windows systems.
> 
> 
> This has been discussed elsewhere in the internet [1] and seems to be a long-standing issue in Java.
> 
> 
> 
> With this mail Iâd like to make you aware of this (in case you did not know this before) and would like to encourage you to actually not execute file operations in the ui thread. We may also consider doing some kind of caching but such a discussion would by far be over my knowledge, and thus, should be left to discuss with the platform team. 
> 
> For now, I think we would benefit very much if every project that accesses files/resources would review their code and think about refactoring some part of the FileSystem work (even if itâs only checking a fileâs attributes) into background processes.
> 
> Best,
> Marcel
> 
> 
> [1] http://stackoverflow.com/questions/20546676/webstart-winntfilesystem-getbooleanattributes-performance
> 
> 
> -- 
> Codetrails GmbH
> The knowledge transfer company
> 
> Robert-Bosch-Str. 7, 64293 Darmstadt
> Phone: +49-6151-276-7092
> Mobile: +49-179-131-7721
> http://www.codetrails.com/
> 
> Managing Director: Dr. Marcel Bruch
> Handelsregister: Darmstadt HRB 91940
> 
> _______________________________________________
> cross-project-issues-dev mailing list
> cross-project-issues-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev

-- 
Gunnar Wagenknecht
gunnar@xxxxxxxxxxxxxxx