Я использую сторонний API, который требует привязки к потоку, т. Е. Сторонний API возвращает дескриптор, который любые последующие сторонние вызовы API, использующие этот дескриптор, должны выполнять в том же самом потоке. Каков наилучший способ реализовать это в стандарте C ++ 11 (без использования сторонних библиотек, например, boost и т. Д.)?
В идеале я хотел бы иметь возможность передавать в замыканиях формы
[&] { return api_function(_handle, parameters); }
потоку, для которого создается дескриптор, если это вообще возможно.
Вначале я хотел создать std :: thread, который выполняет задачи, добавленные в std :: queue. Это лучшее решение?