Criação de uma Aplicação de Driver - Aplicações Multithreaded

Aplica-se a: SQL ServerBase de Dados SQL do AzureAzure SQL Managed InstanceAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)

Importante

SQL Server Native Client (SNAC) não é fornecido com:

  • SQL Server 2022 (16.x) e versões posteriores
  • SQL Server Management Studio 19 e versões posteriores

O SQL Server Native Client (SQLNCLI ou SQLNCLI11) e o Microsoft OLE DB Provider for SQL Server (SQLOLEDB) herdado não são recomendados para o desenvolvimento de novos aplicativos.

Para novos projetos, use um dos seguintes drivers:

Para o SQLNCLI fornecido como componente do Mecanismo de Base de Dados do SQL Server (versões de 2012 a 2019), consulte esta exceção ao Ciclo de Vida de Suporte .

O driver ODBC do SQL Server Native Client é um driver multithread. Escrever uma aplicação multithread é uma alternativa à utilização de chamadas assíncronas para processar múltiplas chamadas ODBC. Um thread pode fazer uma chamada ODBC síncrona, e outros threads podem processar enquanto o primeiro thread está bloqueado à espera da resposta à sua chamada. Este modelo é mais eficiente do que fazer chamadas assíncronas porque elimina sobrecargas, como o tráfego de rede, e a realização de chamadas de função ODBC repetidas a testar SQL_STILL_EXECUTING.

O modo assíncrono continua a ser um método eficaz de processamento. As melhorias de desempenho de um modelo multithread não são suficientes para justificar a reescrita de aplicações assíncronas. Se os utilizadores estiverem a converter DB-Library aplicações que utilizam o modelo assíncrono DB-Library, é mais fácil convertê-las para o modelo assíncrono ODBC.