DS2 – Exemple de programme de thread simple
Le programme suivant montre comment un thread crée des données et transmet des variables au programme de données :
Ce qui donne dans la log :
La table monThread dans la work :
La table monDataset :
Notes :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
proc ds2; thread monThread /overwrite=yes; dcl double x; method init(); do i=1 to 3; x=i; output; end; end; endthread; data monDataset; dcl thread monThread t_instance; method run(); set from t_instance threads=3; end; enddata; run; quit; |
- L'option de table OVERWRITE = YES permet d'écraser le programme de thread. .
- Le programme de données spécifie 3 threads (set from t_instance threads=3;) , le programme de thread s'exécute dans 3 threads distincts dans un processus unique.
- Ce programme de thread produit un ensemble de variables de sortie par thread. Dans le thread nous avons une boucle qui crée 3 variables. Comme le montre la copie d'écran, nous avons 9 variables dans le dataset monDataset