single thread reactor