MCPcopy Create free account
hub / github.com/NativeScript/SimDeck / drop

Method drop

packages/server/src/simulators/session.rs:69–88  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

67
68impl Drop for FrameSubscription {
69 fn drop(&mut self) {
70 let previous = self
71 .inner
72 .active_frame_subscribers
73 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
74 Some(value.saturating_sub(1))
75 })
76 .unwrap_or(0);
77 if previous <= 1 {
78 self.inner.native.set_client_foreground(false);
79 *self.inner.latest_keyframe.write().unwrap() = None;
80 self.inner.last_keyframe_ms.store(0, Ordering::Relaxed);
81 self.inner.last_refresh_us.store(0, Ordering::Relaxed);
82 self.inner.native.reconfigure_video_encoder();
83 self.inner
84 .metrics
85 .stream_pipeline_resets
86 .fetch_add(1, Ordering::Relaxed);
87 }
88 }
89}
90
91impl SimulatorSession {

Callers

nothing calls this directly

Calls 3

set_frame_callbackMethod · 0.80
set_client_foregroundMethod · 0.45

Tested by

no test coverage detected