SingleCallback Assertion error

I’m developing with foundationdb’ flow architecture, and now I’m using PromiseStream to send some requests, but I’m having a problem Assertion SingleCallback<T>::next == this failed @ ../flow/flow.h 658 I have no idea why this problem happened. any clues?

void addCallbackAndDelFutureRef(SingleCallback<T>* cb) {
	ASSERT(SingleCallback<T>::next == this); // this is where goes wrong!!!
	cb->insert(this);
}

I haven’t looked carefully, but this might be indicating that FutureStream doesn’t support multiple listeners. Are you waiting on the same stream multiple times?

Yes, FutureStream is misused by me.