로드 중...
검색 중...
일치하는 항목 없음
ConsoleInterrupt.java
1패키지com.슬롯examples.interrupt;
2
3가져오기java.io.파일;
4가져오기java.io.PrintStream;
5
6가져오기 com.감스.API.GAMSJob;
7가져오기 com.게임.API.슬롯옵션;
10
20공개 클래스콘솔인터럽트{
21
22 공개 정적 무효main(String[] args)
24 부울대화형 =거짓;
25 if(args.length > 0)
26wsInfo.setSystemDirectory( 인수[0] );
27 if(args.length > 1)
28interactive = args[1].equals("상호작용") ? 사실:거짓;
29}
30}
31
32파일 WorkingDirectory =신규파일(System.getProperty("user.dir"), "콘솔인터럽트");
33workingDirectory.mkdir();
34wsInfo.setWorkingDirectory(workingDirectory.getAbsolutePath());
35 슬롯작업공간ws =신규 슬롯작업공간(wsInfo);
36
37 //해결하는 데 시간이 필요한 MIP를 사용
38 최종 GAMSJob직업 = ws.addJobFromGamsLib("서클팩");
39 최종GAMSOptions opt = ws.추가옵션();
40선택.setAllModelTypes("scip");
41
42 // 비동기적으로 스레드 시작
43 최종근로자 w =신규작업자(작업, 선택, System.out);
44w.start();
45
46 if(대화형)
47 // 사용자 인터럽트 신호를 포함하여 종료 시 수행될 작업을 등록합니다.
48Runtime.getRuntime().addShutdownHook(신규스레드()
49@재정의
50 공개 무효실행()
51 // 작업이 아직 종료되지 않은 경우에만 실행 중인 GAMSJob에 인터럽트 신호를 보냅니다.
52 부울종료됨 = (w.getState()==Thread.State.TERMINATED);
53 부울중단됨 =거짓;
54 if(!종료됨)
55중단됨 = 작업.인터럽트();
56System.out.println("*** 직업: "+ 직업.getJobName() +" 대화형 모드에서 완료됨 "
57+ (종료 ?"중단 없이 : ":" 중단됨: " )
58+ 중단됨
59);
60}
61});
62}그밖에{
63 // 2초 후에 작업을 중단합니다.
64 시도해 보세요{
65Thread.currentThread();
66Thread.sleep(2000);
67 잡기( 예외 e )
68e.printStackTrace();
69System.exit(-1);
70}
71 // 작업이 아직 종료되지 않은 경우에만 실행 중인 GAMSJob에 인터럽트 신호를 보냅니다.
72 부울종료됨 = (w.getState()==Thread.State.TERMINATED);
73 부울중단됨 =거짓;
74 if(!종료됨)
75중단됨 = 작업.인터럽트();
76System.out.println("*** 직업: "+ 직업.getJobName()+" 비대화형 모드에서 완료됨 "
77+ (중단 ?"와 함께":"없이")
78 + "인터루트 신호가 전송되었습니다."
79);
80}
81}
82
84 정적 클래스노동자확장스레드
85 GAMSJob직업;
86GAMSOptions 옵션;
87PrintStream 출력;
88
94 공개노동자(GAMSJobjb, GAMSOptions 선택, PrintStream 출력) job = jb; 옵션 = 선택; 출력 = 출력;
95
97@재정의
98 공개 무효실행()
99 시도해 보세요{
100직업.실행(옵션, 출력);
101}잡기(예외 e)
102e.printStackTrace();
103System.exit(-1);
104}
105}
106
107}
108}
void setAllModelTypes(문자열 값)
void setSystemDirectory(문자열 디렉토리)
void setWorkingDirectory(문자열 디렉터리)
GAMSJob addJobFromGamsLib(문자열 모델 이름)
이 예는 실행 중인 작업에서 해결을 중단한 다음 실행을 계속하는 방법을 보여줍니다...