diff options
author | Stephane Letz <letz@grame.fr> | 2013-05-09 13:24:37 +0200 |
---|---|---|
committer | Stephane Letz <letz@grame.fr> | 2013-05-09 13:24:37 +0200 |
commit | 3959a27499547d89cbfff7924598dd06a8ea9ccc (patch) | |
tree | dec80eefc08f918b6d38a94ac86e486d28d484e2 /common/JackClient.cpp | |
parent | 3a3aa4c21986e2b624043ba4bb92e23546317273 (diff) | |
download | jack2-3959a27499547d89cbfff7924598dd06a8ea9ccc.tar.gz |
Cleanup RT setup code in JackClient.
Diffstat (limited to 'common/JackClient.cpp')
-rw-r--r-- | common/JackClient.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/common/JackClient.cpp b/common/JackClient.cpp index 6460dfac..166879ae 100644 --- a/common/JackClient.cpp +++ b/common/JackClient.cpp @@ -524,23 +524,18 @@ bool JackClient::Init() jack_error("Failed to set thread realtime key"); } - if (GetEngineControl()->fRealTime) { - set_threaded_log_function(); - } - // Setup RT if (GetEngineControl()->fRealTime) { - if (fThread.AcquireSelfRealTime(GetEngineControl()->fClientPriority) < 0) { - jack_error("JackClient::AcquireSelfRealTime error"); - } + set_threaded_log_function(); + SetupRealTime(); } return true; } -int JackClient::StartThread() +void JackClient::SetupRealTime() { - jack_log("JackClient::StartThread : period = %ld computation = %ld constraint = %ld", + jack_log("JackClient::Init : period = %ld computation = %ld constraint = %ld", long(int64_t(GetEngineControl()->fPeriod) / 1000.0f), long(int64_t(GetEngineControl()->fComputation) / 1000.0f), long(int64_t(GetEngineControl()->fConstraint) / 1000.0f)); @@ -548,6 +543,13 @@ int JackClient::StartThread() // Will do "something" on OSX only... fThread.SetParams(GetEngineControl()->fPeriod, GetEngineControl()->fComputation, GetEngineControl()->fConstraint); + if (fThread.AcquireSelfRealTime(GetEngineControl()->fClientPriority) < 0) { + jack_error("JackClient::AcquireSelfRealTime error"); + } +} + +int JackClient::StartThread() +{ if (fThread.StartSync() < 0) { jack_error("Start thread error"); return -1; |