GDBM::READER」を指定することだ。それと面白いのは、ファイルを更新する側では、データベースファイルを開きっぱなしにして、その内容を毎秒のように更新しているのだが、ファイルを参照する側では、参照開始時点の内容に固定され(ているように見え)ること。相手がデータベースだと考えれば、好ましい挙動かもしれない。ちなみに、ファイルを参照する側で、更新をしようとすると、ロックに失敗する。当たり前だが、コンテナ間でも排他が効くのだ。(Errno::EAGAIN)実際は、更新側も参照側も、ここまでデータベースファイルを開きっぱなしにすることはなく、こまめにクローズするだろうから、実用上は問題ないだろう。今回は、gdbmのデータベースファイルを共有したが、別に通常のファイルであっても、片方はファイルを更新するが、片方はファイルを参照するだけ、という運用なら、ほとんど問題は起きないのではないかと思う。アトミック性を期待して、更新側でテンポラリファイルに生成してからリネーム、などということをすると、ハードリンクが途切れてしまうのでダメだ。信頼性が必要な場合は、やはりgdbmだな。それと、家の電波掛時計の調子が悪かったり、テレワークのために始業終業のチャイムが鳴ってほしかったり、筋トレのインターバルのためにサッと秒数を読み取りたかったり、ずーっと購入したまま放置してあった16セグのLEDを活用したかったり、久々にハンダゴテを握りたかったり、ということで、デジタル置時計を作ることにした。先々週の金曜(1/22)に具体的な構想を始めてから、PICによる制御ソフトとハンダ付けを同時進行で進めているのだが、オレ史上で最大のハンダ付け点数である。普通はこのレベルならプリント基板を発注するわなぁ......。手持ちのFETが足りないので、2ケタをダイナミック点灯させるトコまでは成功しているが、死ぬほどハンダ付けして、まだ4ケタ。完成は8ケタの予定なんですが......気が遠くなるわ。早く製作しないと、せっかく買った16セグのLEDの部品が遺品になってしまう、と思ったのだが、いつ購入したものなのやら記録がない。このブログを検索すると、なんか違う16セグも購入してるやんけ......確かに部品棚に残ってるわ......。気張って製作を進めなければならんな......。1.8.7-p374。