> You risk messing up someone elses Thread, unless you are extremely careful with how you use same-thread execution.
> No user-callbacks / functions should be executed on that sameThread for that reason.

Hi Viktor,

So for one, we have ensured that in our high level API, that is, the API that typical users use, eg factory methods like Iteratee.fold, Iteratee.foreach, Enumeratee.map, Enumerator.generate, and other simple methods like Iteratee.map, Iteratee.flatMap, we always accept an execution context.  For lower level methods, if you don't understand enough to know what the right execution context to use is, then I very highly doubt that you'll understand enough to even write code that compiles using the lower level methods.

Rich,

One thing we need to check is the Enumerator.fromStream call.  Is that accepting an execution context?  Because it does blocking IO, and now it won't be in the iteratee thread pool.