Advertisement
Guest User

Untitled

a guest
Jan 18th, 2019
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 1.28 KB | None | 0 0
  1. @echo off
  2. setlocal enabledelayedexpansion
  3.  
  4. rem on initialise le multi-threading
  5. if not "%~1"=="" goto %1
  6. set Thread=call :Thread
  7. set ThreadCaller="%~f0"
  8.  
  9. rem on ajoute un thread (mais on l'exécute pas)
  10. %Thread%.New mon_premier_Thread
  11.  
  12. rem on exécute tout les threads
  13. %Thread%.StartAll
  14.  
  15.  
  16. pause>nul&exit
  17. :mon_premier_Thread
  18.  
  19. rem Initialisation du thread, cette partie est exécutée une seule fois au lancement du thread
  20. rem on peut donc initialiser nos variables ici
  21. set n=0
  22.  
  23. rem Cette partie tournera en boucle, on est pas obligé de la mettre,
  24. rem cela dépend de ce que vous voulez faire ;)
  25. for /l %%i in () do (
  26.  
  27.   rem Votre CODE ICI
  28.  
  29.  
  30.   rem exemple de code:
  31.   set /a n+=1
  32.   echo;!n!
  33.  
  34. )
  35.  
  36.  
  37. pause>nul&exit
  38. :Thread.New
  39.   set ThreadStack=!ThreadStack! "%~1"
  40. Exit /b
  41. :Thread.N
  42. for /l %%i in () do rem
  43. Exit /b
  44. :Thread.StartAll
  45.   set ThreadExec=
  46.   set ThreadNb=0
  47.   for %%i in (!ThreadStack!) do (
  48.     set "ThreadExec=!ThreadExec! __AND__ !ThreadCaller! %%~i __OUT__ CON"
  49.     set /a ThreadNb+=1
  50.   )
  51.   set ThreadExec=!ThreadExec:~9!
  52.   if "!ThreadNb!"=="1" set ThreadExec=!ThreadExec! __AND__ !ThreadCaller! Thread.N __OUT__ CON
  53.   set ThreadExec=!ThreadExec:__AND__=^|!
  54.   set ThreadExec=!ThreadExec:__OUT__=^>!
  55.   pushd %temp%
  56.   %ThreadExec%
  57.   popd
  58. Exit /b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement