Caching local time zone

David Jarvie lists at
Thu Sep 21 10:04:57 BST 2006

Using KDateTime for date/times in the local time zone can potentially result in very frequent calls to KSystemTimeZones::local() which fetches 
and returns the current local system time zone. Depending on the system, that function may open and read files, and compare their contents. 
Even if the files are still cached (as would usually be the case on a UNIX system when the function calls are made in quick succession), the 
overhead in file system function calls makes me feel uneasy when the function could be called many times a second if arrays of date/time values 
are being converted to or from the local time zone.

Plainly, the system time zone is not going to change frequently, so I think that it would be better to cache it and only reread it periodically. I 
propose to set a timer to refresh it once a minute. Any comments/objections?

Note that this caching applies to the time *zone* (e.g. "Europe/Paris"). It has no impact on the handling of daylight saving time shifts which will 
still be handled without any time lag.

David Jarvie.
KAlarm author & maintainer.

More information about the kde-core-devel mailing list