O que é thread-safe ou não thread-safe no PHP?
Thread-safe: é usado para garantir que, quando a estrutura de dados compartilhada, que é manipulada por diferentes threads, seja impedida de entrar na condição de corrida. A segurança de thread é recomendada quando o servidor da web executa vários threads de execução simultaneamente para diferentes requests. No Thread Safety, o binário pode funcionar em um contexto de servidor da web multi-thread. Thread Safety funciona criando uma cópia de armazenamento local em cada thread para que os dados não colidam com outro thread.
Por exemplo:
- Apache + LoadModule
- IIS
Não seguro para threads: Não verifica a segurança das threads, o que torna sua execução mais rápida, mas, ao mesmo tempo, torna-se mais instável e trava com muita frequência. Refere-se a compilações de um único encadeamento. Na versão não thread-safe, os binários são amplamente utilizados no caso de interação com um servidor web através do protocolo FastCGI, por não utilizar multi-threading.
Por exemplo:
- Apache + FastCGI
- IIS + FastCGI
Portanto, depende de como você deseja usar o PHP. AFAIR rodando PHP com o fastCGI é a forma preferível. Se você não sabe qual versão do PHP está instalada em seu sistema, existe uma maneira fácil de saber disso.
Verifique a versão do PHP Thread safe ou Non Thread Safe instalado:
Abra um phpinfo() e procure a linha Thread safety para uma construção thread-safe que você deve encontrar enable.
- No Windows:
php -i | findstr "Tópico"
- Em * nix:
php -i | grep Tópico
- Em ambos os casos, exibirá qualquer um
Thread Safety => habilitado //ou Thread Safety => desativado
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva