Streaming

TODO: What if the thread was counting all the time and we were just checking its value periodically?