this really should return a handle so you can cancel the call from the thread
that queued it. the cancel needs to block if the callback is currently in
progress (locks around it) and of  course cancel without error. now we need to
also know when the thread safe call is done so the thread knows if the handle
is valid anymore.

why?

example. thread queues a threadsafe call to do evas_object_file_Set(obj, file,
NULL); fine, this is meant to run in the mainloop some time later. BUT.. then a
bit later the thread realizes that the file is invalid or has been deleted and
wants to cancel the operation. maybe it wants to free a data struct or object
that was passed to the threadsafe callback. we put a fair bit of work on the
shoulders of the app then to handle this. we need a way to cancel the
operation as its now asynchronous. (what if mainloop deletes the object or
canvas the object is in before the async callback can get run? we need more
management here).

-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [email protected]


------------------------------------------------------------------------------
Get a FREE DOWNLOAD! and learn more about uberSVN rich system, 
user administration capabilities and model configuration. Take 
the hassle out of deploying and managing Subversion and the 
tools developers use with it. 
http://p.sf.net/sfu/wandisco-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to