oln_T::sync_cnt() だったが,希哲13年7月5日,補助函数化。
作業を続ける前に,打ち消し型(空型)を no_t に統一することを決め,新しい knu-cu-mode でも no_t を斜体にしてみる。思っていたよりずっと良い。
oln_T::sync_cnt() を補助函数化,動作確認して終了。
oln_T
}{希哲13年7月5日}{希哲13年7月5日の開発}{sync_cnt()}{希哲13年7月5日の進捗時限}{希哲13年7月5日の進捗}{進捗時限}(9)oln_T の拡張を考え,少し設計を練る。
実験的に oln_T::sync_cnt() を道手として実装したが,今後この手の機能を増やしていくとを考えると,これは補助函数の方が良い。
考え事で終了。
oln_T::sync_cnt() の実験続き。
前縁がやりとりするページ, pg_drg_vio.h, pg_fg.h で DG_T 客体がスタックに置かれていたのを発見。昔,ロックによる停止を避けるためにこんな応急処置をした気がする。
恐らく,DG_T が破棄される際,最後の oln_T が実行する bye() のカウンタが0になり,スタックにあるアドレスを解放しようとしてしまう問題がある。これはそもそも DG_T が参照カウンタ付きで自身の指示体を渡していることが問題なので,oln_T の設計を汎用的にしたければ DG_T 側で p_ の参照カウンタを無効にして渡せばいい。要修正。
これを修正したら問題なく動作するようになった。動作速度も,大きく落ちたようには感じない。
終了。
oln_T::sync_cnt() の実験続き。
同期が機能していなかったのは,DG_T::oln() での生成時に自身の指示体を渡していなかっただけだった。
しかし,指示体を渡してみると,記憶系の違了で落ちる。最悪,xtd::ptr_ 実装の見直しが必要かもしれない。
解決しないまま終了。