[РЕШЕНО] СИ++ параллельные вычисления (многопоточность)

имеется программа, которая работает в однопоточном режиме, однако отказывается делиться на потоки.

классы Card, Hand, Deck не описал в данном примере, потому что и так уже громоздко получилося. Если необходимо их описать, добавлю.

данная программа выдает ошибку:
/usr/include/c++/8.2.1/thread:120:17: error: static assertion failed: std::thread arguments must be invocable after conversion to rvalues
  static_assert( __is_invocable<typename decay<_Callable>::type,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           typename decay<_Args>::type...>::value,
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

не пойму, что хочет оно? какие аргументы он имеет ввиду, как преобразованые в rvalue?

весь проект
ответ нашелся тут
однако, я до настоящего момента не понял почему не проходит по ссылке? Ведь, без упаковки в поток все нормально.
 
Зарегистрироваться или войдите чтобы оставить сообщение.