Skip to main content

SHARED_IMAGES

Static SHARED_IMAGES 

Source
static SHARED_IMAGES: Mutex<BTreeMap<String, Arc<DecodedImage>>>
Expand description

デコード済み画像を src で引ける共有の置き場。

WebEngine::image_cacheWebEngine の中にあり、JS 組み込み (drawImage)からは届かない。かといって複製すると数 MB の写真を 二重に持つことになるので、Arc同じ画素を共有する。

【注意】ここのロックは待機・再描画の判定から取ってはいけない。 提示ループ側は高優先度で spin::Mutex は譲らないため、 低優先度のワーカーが握っていると優先度逆転で止まる (image_results_ready で実際に踏んだ)。 読むのは JS の drawImage からだけにし、Arc を複製して即座に放す。