Le programme suivant montre comment un thread crée des données et transmet des variables au programme de données :
La table monThread dans la work :
La table monDataset :
Notes :
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;
Ce qui donne dans la log :
La table monThread dans la work :
La table monDataset :
Notes :
- 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







