1

Send delayed operations to the main thread

This commit is contained in:
Eddoursul 2022-07-15 20:36:26 +02:00
parent 10194f1757
commit 4d4d95b317
3 changed files with 9 additions and 3 deletions

Binary file not shown.

View File

@ -269,7 +269,9 @@ namespace ArtifactTracker
g_bBookShelf = false;
std::thread([]() {
std::this_thread::sleep_for(std::chrono::milliseconds(1200));
ArtifactTracker::SyncCellStorage();
SKSE::GetTaskInterface()->AddTask([&]() {
ArtifactTracker::SyncCellStorage();
});
}).detach();
} else {
SyncCellStorage();
@ -757,7 +759,9 @@ namespace ArtifactTracker
g_iFollowerIndex = iCurrentFollowers;
std::thread([]() {
std::this_thread::sleep_for(std::chrono::milliseconds(3000)); // wait for followers to load into the new cell
RescanFoundArtifacts();
SKSE::GetTaskInterface()->AddTask([&]() {
RescanFoundArtifacts();
});
}).detach();
}
}

View File

@ -116,7 +116,9 @@ auto EventListener::ProcessEvent(
if (ref && ArtifactTracker::IsArtifact(ref->GetBaseObject())) {
std::thread([]() {
std::this_thread::sleep_for(std::chrono::milliseconds(200));
ArtifactTracker::SyncCellStorage();
SKSE::GetTaskInterface()->AddTask([&]() {
ArtifactTracker::SyncCellStorage();
});
}).detach();
}
}