[Pidgin] #37: Stop doing blocking file IO
Pidgin
trac at pidgin.im
Sat Jan 31 08:27:52 EST 2009
#37: Stop doing blocking file IO
----------------------+-----------------------------------------------------
Reporter: seanegan | Owner: seanegan
Type: defect | Status: new
Milestone: 3.0.0 | Component: pidgin (gtk)
Version: 2.0 | Resolution:
Keywords: |
----------------------+-----------------------------------------------------
Comment(by infjaf):
In the function purple_util_write_data_to_file_absolute (libpurple/util.c)
it does fflush and fsync.
This function is called to save prefs.xml and this file is saved too much
time (every time you move pidgin window!). To get worse, I guess this
function is called from the main thread, so if the system is under heavy
I/O load o have a bad response time from a network drive (NFS) pindgin
interface gets unusable for a while (30 seconds or more).
So there are varios solutions:
1. Saving less times prefs.xml (only on exit pidgin or prefs saved by the
user, for example)
2. Launching this task in a separate thread on the background.
3. Not flushing the contents? I supposse this can be dangerous, but i'm
not sure.
--
Ticket URL: <http://developer.pidgin.im/ticket/37#comment:4>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list