Skip to main content

Module queue_batch

Module queue_batch 

Source
Expand description

取得待ち行列から「まとめ取得する分」を選ぶ判定(純粋モジュール)。

仕様は spec/resource_loading.md

§なぜ純粋関数に切り出すのか

【2026-08-05】同一ホストをまとめて 1 接続で取る機能を 5 回配線して 5 回とも [NET][STATS] total=3 でページが読めなくなった。

原因は取得処理ではなかった([KADIAG] を入れたら、 まとめ取得の関数は一度も呼ばれていないのに止まっていた)。

兄弟をまとめる処理は待ち行列から項目を取り除く。 ところが「取り除いたが条件によっては使わない」経路があると、 その項目はどこにも戻らず消える。 消えたリソースは二度と取得されないので、ページが完成しない。

そこで 「取り出す前に、取り出してよいかを決める」 形にし、 その判定をここへ切り出して単体試験で固定する (tests/src/test_queue_batch.rs)。

Structs§

Candidate
まとめ取得の候補を選ぶための、1 項目ぶんの情報。

Functions§

may_start_batch
そもそもまとめ取得を始めてよいか。取り出す前に呼ぶ。
select_batch
まとめ取得へ載せる項目の添字を選ぶ。