Bom dia!
Há dias estou tentando usar o ACBRLibNFSe com multi-threading (MT) no PHP. No modo single esta funcionando corretamente, porém ao tentar usar o MT ocorre um "crash" e para tudo sem log mesmo estando no modo paranóico.
Fiz o teste com o Node.js conforme exemplo abaixo e funcionou corretamente com MT, então descarto problema na DLL, no entanto, estou postando aqui com o objetivo de obter apoio/auxilio de outras pessoas.
No PHP, uso o FFI::cdef. Olhando o doc e o .pas da DLL vi que preciso enviar o ponteiro handle para inicializar a dll e depois usar o mesmo ponteiro para demais métodos. No meu código consigo inicializar porém ocorre crash (erro sem log) ao tentar finalizar, creio que o handle está errado e o finalizar não encontra o ponteiro do inicializar.
Ambiente: PHP 8.2, apache, Windows 10 x64
Código de teste:
header da dll
Referência