Use ref in ComponentThread::joltThreadReq

This commit is contained in:
2025-12-26 13:46:28 -04:00
parent bfe5eb12af
commit 2222491c21
3 changed files with 29 additions and 44 deletions
@@ -125,14 +125,8 @@ public:
* JOLTing is the mechanism that allows threads to enter their main
* event loops and set up TLS vars after all global constructors have
* completed. This prevents race conditions during system startup.
*
* @param selfPtr Shared pointer to this thread (required because TLS
* isn't set up yet, so shared_from_this() can't be used)
* @param callback Callback to invoke when JOLT completes
*/
void joltThreadReq(
const std::shared_ptr<PuppetThread>& selfPtr,
Callback<threadLifetimeMgmtOpCbFn> callback);
void joltThreadReq(Callback<threadLifetimeMgmtOpCbFn> callback);
// CPU management methods
void pinToCpu(int cpuId);
@@ -163,8 +157,8 @@ extern std::shared_ptr<MarionetteThread> thread;
// Forward declaration for spinscale namespace functions and variables
// Must be after smo namespace so ThreadId is defined
namespace spinscale {
extern smo::ThreadId marionetteThreadId;
void setMarionetteThreadId(smo::ThreadId id);
extern smo::ThreadId marionetteThreadId;
void setMarionetteThreadId(smo::ThreadId id);
}
#endif // COMPONENT_THREAD_H