Dirk Meyer wrote:
Rob Shortt wrote:

Use a Twisted reactor for the main/event loop. This should make
freevo more responsive and keep it from blocking on stupid things
like network activity. It will also let us easily turn Freevo main
into a XML-RPC server for receiving communications from
recordserver.


It would also make it possible to spend more time searching bugs. Let
me explain: I may repeat myself but threads are bad. Remember the bug
where Aubin got a STOP event on each second mp3 he played. It worked
for me and was a threading bug I found after several hours. Or the bug
when playing stopped after 5 seconds? Again, it worked for me and was
a threading problem. I spent hours to find these bugs and tried to
remove all threads from Freevo. The two remaining threads are checked
spending hours of checking.

I agree, threading is a PITA, I dislike them too. I would like to see Freevo get rid of all multi-threading.



To make it worse: twisted uses threads I don't know about. I need to

I don't think the Twisted people like threading either. See:

http://www.twistedmatrix.com/documents/current/howto/async
http://www.twistedmatrix.com/documents/current/howto/threading


So as conclusion: do not add a twisted main loop to Freevo. We may
need more time to keep us from blocking, but we save much more time
searching bugs.

The blocking is a pain and our main loop isn't so hot either (while 1: do something; sleep;). I would like to see improvements in both areas and using Twisted looks like a good solution.



At the university I work, we developed and use mbus (www.mbus.org).
Since we all hate threads, it's 100% thread free and there is also a
python interface. Communication over mbus is: secure, fast, language
independent (C/C++/Perl/Python) and supports rpc based communication.
A co-worker using Freevo now ordered a DVB-T card. As I told him we
use twisted for the recordserver, he said he would try to find a
better way.

That looks interesting, I'd like to take a look at it.

-Rob


------------------------------------------------------- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click _______________________________________________ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel

Reply via email to