Могут ли объекты типа packaged_task храниться в очереди?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Могут ли объекты типа packaged_task храниться в очереди?

Сообщение Anonymous »

Это реализованный мной код для отправки задач в пул потоков, который используется для отправки задач в пул потоков. Tasks_ — очередь задач. Это измененный код.

Код: Выделить всё

using Task = std::function;
std::queue tasks_;

template
auto ThreadPool::submitTask(F &&f, Args &&... args) -> std::future {
using RetType = decltype(f(args...));
auto task = std::make_shared(
std::bind(std::forward(f), std::forward(args)...));
std::future res = task->get_future();
//

{
std::unique_lock lock(mutex_);
if (!notFullCondition_.wait_for(lock, std::chrono::seconds(1),
[&] { return taskSize_.load() < taskQueueThreshold_; })) {
std::cerr  std::future {
using RetType = decltype(f(args...));

std::packaged_task task(std::bind(std::forward(f), std::forward(args)...));
std::future res = task.get_future();
//

{
std::unique_lock lock(mutex_);
if (!notFullCondition_.wait_for(lock, std::chrono::seconds(1),
[&] { return taskSize_.load() < taskQueueThreshold_; })) {
std::cerr 

Подробнее здесь: [url]https://stackoverflow.com/questions/79305076/can-packaged-taskvoid-type-objects-be-stored-in-queue[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»