Sobes.tech
Junior — Middle
102

Pouvez-vous expliquer la finalité et le fonctionnement de la fonction std::async en C++?

Entreprises à qui on a demandé
СБЕР ДискСБЕР Диск
Открытые РешенияОткрытые Решения

Réponse de l'IA

sobes.tech IA

Функция std::async в C++ используется для запуска задачи асинхронно, то есть в отдельном потоке, позволяя выполнять операции параллельно с основным потоком.

Она возвращает объект std::future, с помощью которого можно получить результат выполнения задачи, когда он будет готов.

Пример использования:

#include <iostream>
#include <future>

int compute() {
    // Долгая операция
    return 42;
}

int main() {
    std::future<int> result = std::async(std::launch::async, compute);
    // Можно выполнять другие задачи
    std::cout << "Результат: " << result.get() << std::endl;
    return 0;
}

В этом примере функция compute выполняется в отдельном потоке, а основной поток может продолжать работу, пока не понадобится результат.