全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1927 1
2010-06-07
各位大哥,你们好!小女子有一个关于SAS多进程的问题:

我有一个主控进程,程序如下:
%macro main();
%do JOB_CD=1 %to 3;
%let JOB_CD=&JOB_CD.;
%let LOAD_DATE=18420;/*2010-06-07*/
%let PROG_NAME=%str(create_test_data.sas);
%let LOG_FILE=%str(log&JOB_CD..log);
DATA _NULL_;
   STR1="'C:\Program Files\SAS\SAS 9.1\SAS.EXE'";
   STR3=" -SYSIN 'F:\etl\create_test_data.sas'";
   STR4=" -LOG 'F:\etl\log\log&JOB_CD..log'";
   STR5=" -SYSPARM 'JOB_CD=&JOB_CD LOAD_DATE=&LOAD_DATE. PROG_NAME=&PROG_NAME. LOG_FILE=&LOG_FILE. '";
   STR6=" -NOTERMINAL -NOSPLASH -NOSYNTAXCHECK";
   CALL SYMPUT('X_Command', STR1||STR3||STR4||STR5||STR6);
RUN;
DATA _NULL_;
CALL SYSTEM("&X_Command");
Rc=SLEEP(1, 1);
RUN;
%end;
%mend main;
%main;

我本意是想同时启动三个同样的子进程create_test_data.sas,但是运行上面的程序后,create_test_data.sas总是串行运行,请问各位大哥有什么办法吗? 其中create_test_data.sas只是一个测试数据程序,代码如下:
data a;
do i=1 to 30000000;
output;
end;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2010-6-8 21:40:06
使用系统选项 NOXSYNC  XSYNC 控制 call system 同步或不同步
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群