There *is* mutual exclusion on all Java output streams (as well as input streams) so at least individual prints should be atomic. Not that it will solve this, but still, this kind of granularity of interleaving is unusual. I have never seen it.
On Wednesday, March 13, 2013 4:27:00 AM UTC+1, Michael Klishin wrote: > > 2013/3/13 larry google groups <lawrenc...@gmail.com <javascript:>> > >> At least some of this mangled text is coming from this function, which is >> called at startup and then runs in its own thread > > > If your app itself prints stuff to stdout/stderr, it is likely to be > interleaved with the output from the spying thread. > Thread execution order and time slicing is non-deterministic and nothing > synchronizes writing to stdout/stderr > to enforce ordering. > -- > MK > > http://github.com/michaelklishin > http://twitter.com/michaelklishin > -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.