作者 邓超

1

@@ -144,19 +144,22 @@ switch ($argv[1]??0){ @@ -144,19 +144,22 @@ switch ($argv[1]??0){
144 break; 144 break;
145 } 145 }
146 case 'stop':{ 146 case 'stop':{
147 - echo "正在退出程序...\n非必要请不要强制kill掉进程\n"; 147 + \Co\run(function ($ps){
  148 + echo "正在退出程序...\n非必要请不要强制kill掉进程\n";
148 149
149 - redis()->set('send_job_is_stop','stop',86400*5); 150 + redis()->set('send_job_is_stop','stop');
150 151
151 - while (true){ 152 + while (true){
152 153
153 - $num = exec($ps);  
154 - if(!$num){  
155 - break; 154 + $num = exec($ps);
  155 + if(!$num){
  156 + break;
  157 + }
  158 + co::sleep(0.2);
156 } 159 }
157 - sleep(1);  
158 - }  
159 - echo "已退出程序\n"; 160 + echo "已退出程序\n";
  161 + },$ps);
  162 +
160 break; 163 break;
161 } 164 }
162 default:{ 165 default:{
@@ -289,19 +289,22 @@ switch ($argv[1]??0){ @@ -289,19 +289,22 @@ switch ($argv[1]??0){
289 break; 289 break;
290 } 290 }
291 case 'stop':{ 291 case 'stop':{
292 - echo "正在退出程序...\n非必要请不要强制kill掉进程\n"; 292 + \Co\run(function ($ps){
  293 + echo "正在退出程序...\n非必要请不要强制kill掉进程\n";
293 294
294 - redis()->set(SYNC_RUNNING_REDIS_KEY,'stop'); 295 + redis()->set(SYNC_RUNNING_REDIS_KEY,'stop');
295 296
296 - while (true){ 297 + while (true){
297 298
298 - $num = exec($ps);  
299 - if(!$num){  
300 - break; 299 + $num = exec($ps);
  300 + if(!$num){
  301 + break;
  302 + }
  303 + co::sleep(0.2);
301 } 304 }
302 - sleep(1);  
303 - }  
304 - echo "已退出程序\n"; 305 + echo "已退出程序\n";
  306 + },$ps);
  307 +
305 break; 308 break;
306 } 309 }
307 default:{ 310 default:{