Java実はputsは、背後で、引数の出力と改行の出力の2つに処理を分割して実行します。このため、この2つの処理の間に別のスレッドがスケジュールされ、別のスレッドの出力が挟まれしまう可能性があります。低レベル呼び出しを混在して使用することは賢明ではない。その結果は定義されておらず、望む結果が得られない可能性が高い。とあることから、やっぱりスレッドとか間に入ったら、平気でぶった切られる仕様らしい。実装はどうなってるか確認してみた。:排他制御っぽいことはしていないように見える。それ以上はよくわからないので、保留。}なるほど、ロックをかけて、改行が連続して出力されるようにしている。これだと文字列と改行の間にスレッドが割り込むことはないようである。12はてなブログをはじめよう!fd0さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。