Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recording thread deadlock fix #1695

Merged
merged 3 commits into from
Aug 26, 2019
Merged

Conversation

yanenkoa
Copy link
Contributor

This is a fix for a possible deadlock whenever recording thread is stopped, described in #1694.

The gist of this solution is that when stopRecording is called, GameThread no longer waits for FRecordingThread to finish — recording thread is let to run its course to completion. To be able to then start recording again, finishing thread is "moved aside" to another static variable finishing_instance_ in FRecordingThread class to free up the running_instance_ variable.

When EndPlay occurs, FRecordingThread is given a chance to finish its course (same logic as was previously in stopRecording). If it does not finish in a reasonable time though, it's just killed.

@msftclas
Copy link

msftclas commented Jan 11, 2019

CLA assistant check
All CLA requirements met.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants