Kind of fixed weird issue with Task not stopping on application Quit
This commit is contained in:
@@ -33663,6 +33663,18 @@ MonoBehaviour:
|
|||||||
m_OnValueChanged:
|
m_OnValueChanged:
|
||||||
m_PersistentCalls:
|
m_PersistentCalls:
|
||||||
m_Calls:
|
m_Calls:
|
||||||
|
- m_Target: {fileID: 294328934}
|
||||||
|
m_TargetAssemblyTypeName: GhostSystem.GhostReplayManager, Assembly-CSharp
|
||||||
|
m_MethodName: StopAwaitingFrames
|
||||||
|
m_Mode: 1
|
||||||
|
m_Arguments:
|
||||||
|
m_ObjectArgument: {fileID: 0}
|
||||||
|
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
|
||||||
|
m_IntArgument: 0
|
||||||
|
m_FloatArgument: 0
|
||||||
|
m_StringArgument:
|
||||||
|
m_BoolArgument: 0
|
||||||
|
m_CallState: 2
|
||||||
- m_Target: {fileID: 294328934}
|
- m_Target: {fileID: 294328934}
|
||||||
m_TargetAssemblyTypeName: GhostSystem.GhostReplayManager, Assembly-CSharp
|
m_TargetAssemblyTypeName: GhostSystem.GhostReplayManager, Assembly-CSharp
|
||||||
m_MethodName: StopReplay
|
m_MethodName: StopReplay
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ namespace GhostSystem
|
|||||||
private float totalDuration = 0f;
|
private float totalDuration = 0f;
|
||||||
private string firstTimestamp = "";
|
private string firstTimestamp = "";
|
||||||
private string lastTimestamp = "";
|
private string lastTimestamp = "";
|
||||||
|
private bool awaitingFrames;
|
||||||
|
|
||||||
private Dictionary<string, List<FrameModel>> objectTracks = new();
|
private Dictionary<string, List<FrameModel>> objectTracks = new();
|
||||||
|
|
||||||
@@ -108,6 +109,7 @@ namespace GhostSystem
|
|||||||
if (!supabaseReady || !sceneIdReady) return;
|
if (!supabaseReady || !sceneIdReady) return;
|
||||||
|
|
||||||
sceneId = loadedSceneId;
|
sceneId = loadedSceneId;
|
||||||
|
awaitingFrames = true;
|
||||||
|
|
||||||
await LoadAllFrames();
|
await LoadAllFrames();
|
||||||
loadingScreen.SetActive(false);
|
loadingScreen.SetActive(false);
|
||||||
@@ -193,7 +195,7 @@ namespace GhostSystem
|
|||||||
|
|
||||||
private async UniTaskVoid PeriodicUpdateFrames() // lädt alle 10 s neue Frames nach, falls verfügbar
|
private async UniTaskVoid PeriodicUpdateFrames() // lädt alle 10 s neue Frames nach, falls verfügbar
|
||||||
{
|
{
|
||||||
while (true)
|
while (awaitingFrames)
|
||||||
{
|
{
|
||||||
await UniTask.Delay(TimeSpan.FromSeconds(10));
|
await UniTask.Delay(TimeSpan.FromSeconds(10));
|
||||||
await LoadNewFramesAfter(latestLoadedTimestamp);
|
await LoadNewFramesAfter(latestLoadedTimestamp);
|
||||||
@@ -347,6 +349,11 @@ namespace GhostSystem
|
|||||||
TrackedObjects.RemoveRange(TrackedObjects.Count - doorCount, doorCount);
|
TrackedObjects.RemoveRange(TrackedObjects.Count - doorCount, doorCount);
|
||||||
doorCount = 0;
|
doorCount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void StopAwaitingFrames()
|
||||||
|
{
|
||||||
|
awaitingFrames = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user