Pour faire des Thead avec PHP sur mon environnement EasyPHP, j'ai suivi les instructions suivantes :

qui consistent à rajouter l'extension php_pthreads dans php.ini

extension=php_pthreads.dll

après l'avoir téléchargé de PECL, pour Window sur windows.php.net - /downloads/pecl/releases/pthreads/, il vous faudra déployer :

  • "pthreadVC2.dll" dans "C:\Windows\System32"
  • "pthreadVC2.dll" dans "E:\EasyPHP-DevServer-13.1VC11\binaries\php\php_runningversion"
  • "php_pthreads.dll" dans "E:\EasyPHP-DevServer-13.1VC11\binaries\php\php_runningversion\ext"

Pour que cela fonctionne, il vous faudra une version de PHP à partir de la 5.3 compilé avec ZTS (Zend Thread Safe), dans le phpinfo(), vous devriez le voir avec

Thread Safety 	enabled
  • krakjoe / pthreads
  • Extensions sur le contrôle des processus : pthreads une API orientée objet qui permet le multi-threading et qui inclut tous les outils nécessaires pour créer des applications multi-threadées pour le Web ou pour la console.
    • La classe Thread avec un exemple pour s'inspirer. Une implémentation d'un Thread doit étendre cette déclaration et implémenter la méthode run.

Attention tous les variables de votre classe qui étend la classe Thread, même définis, seront inexistant (null), sauf s'il sont créés dans le constructeur ou après.

Et pour votre connecteur à la base de donnée SQL, comme vous ne pouvez pas passer en paramètres un Object, il vous faudra par exemple appeler votre propre méthode singleton "static" de votre classe classe qui "Extends PDO" (par exemple extend PDO to get you better control over it)