mercredi 5 août 2015

Passing pointers to async as arguments generates compiler error

I'm trying to get my head around async but have not yet found a way to pass pointers. The aim is to pass a pointer to a pointer so that the thread readTable initialises the pointer to a PostgreSQL connection as shown below.

PGconn *conn = NULL;
future<int> resultFuture;

void init
{
    resultFuture = async(launch::async, readTable(&conn));
}

However the compiler complains with:
error: no matching function for call to ‘async(std::launch, int)'

Is passing pointers like this not allowed with async?

Thanks for any help.

Aucun commentaire:

Enregistrer un commentaire