# The C++ AsyncDistributedSqlEngine Class

This article is deprecated.

> AsyncDistributedSqlEngine provides the client interface for distributed asynchronous execution of multiple SQL queries simultaneously on database shards. It is also possible to perform asynchronous parallel execution of multiple SQL queries using the Python exdb.connect() method.

> ### For an overview see page C++ Classes

> AsyncDistributedSqlEngine inherits all public methods from base class SqlEngine; the principle methods are listed in the McoSqlEngine page. The additional specialized methods of AsyncDistributedSqlEngine are described in the table below.

> AsyncDistributedSqlEngine(size_t nWorkers = 1, size_t txBufSize = 64 * 1024)) | Constructor of the SQL distributed asynchronous engine
> bool open( Parameter List ) | Open the SQL engine, start the connection pool and connect all worker processes
> bool open( OpenParameters *params, int *badNode = 0 ) | Open the SQL engine with OpenParameters
> void close() | Close the connection with the servers and stop the worker processes
> void executeMany() | Start executing a list of queries
> Vector<SyntheticTable> * waitMany() | Wait on worker processes and return the vector of query results
> QueryStat * get_worker_stat(size_t i_wrk) | Get the status of a worker process
> void destroy(Allocator* allocator) | Call the destructor to destroy the engine and free the allocated memory