はじめに
Java習得の修行の一環として、Javaのタイマー機能(util.Timer)のソースコードを読み、シーケンス図にしてみました。
なお、例外フローと思われるものは反映させていません
また、シーケンス図として正確ではない箇所もあるかと思います。
シーケンス図
感想
タイマーの使い方もそうですが、排他制御やスレッドの書き方など 色々と勉強になりました。
JavaのTimer機能は使ったことがありません。
そこであえて使い方を調べずに、またソース中のコメントもあまり読まずに
ソースコードだけで何をしようとしているのかをつかもうとしました。
(最後に使い方を調べて、間違えた箇所を修正してからqiitaにアップしています)
結果、最初に述べたように勉強になったなと感じています。(時間かかりましたが)
正直を言うと、細部のところでイマイチ把握出来ていない部分(fixDownなど)もあるので、もう少し時間を取りたいと思います。