That is the point and the crux. Currently I see no way to extend the elegance of Python's ASync concept with Qt/PySide. Coroutines should be lightweight, with no threads involved if possible. The idea is to have restartable computation. A clean implementation that is really "green" would require a massive rewrite of Qt's functions, all over the place. Such an implementation would take much effort, but it would really be a reason for me to jump into that area. It would be the real ASync Qt that truly cooperates. But marrying Python's ASync with a brutal "high level" interface that is thread based turned me off, and I recommended against Adrian's approach, but he did not feel it.