About c++ Thread

see this:

This means I can’t use “Event Dispatcher”.
(First, I do not use “Async Task”)

Most people, do it like this:
MyThread -> Any event -> Save dava to queue
GameThread -> Tick event ->Read data in queue

Is there some better way to accomplish the goal?