I believe brokerProgress(0) must not be called from a separate thread. At least there is no mechanism that would allow calling it from another thread.