let find t ~f = read t (fun () -> Option.map (Doubly_linked.find t.queue ~f:(fun kv -> f kv.value)) ~f:Key_value.value)