yoav glazner wrote:
My Idea is to have a value returning Thread. I'll explain by example.
<pycode> def foo(): time.sleep(20) return 'bar'
value = thread.startValueReturningThread(foo) #i need a better name for the function...)
#here we do some work mg = moonGravity() mg.disable()
#now we need the value that foo returned print value #this would be blocking untill foo is done!
This feature should provide a way to increase performance when possible with simple syntax.
What do you think?
I think it would be better if startValueReturningThread() returned what we could call a 'deferred result' object:
result = thread.startValueReturningThread(foo)
If you requested the actual result before it was available then it would wait:
print result.value() # or 'result.value'?
It could be implemented using a thread and a queue.