로드 중...
검색 중...
일치하는 항목 없음
GAMSRemoteClass.cs
1사용 중시스템;
2사용 중System.Collections.Generic;
3사용 중System.Linq;
4사용 중시스템.텍스트;
5사용 중시스템.IO;
6사용 중크레이지 슬롯;
7
8
9네임스페이스GAMSRemoteObject
10{
24 공개 클래스GAMSRemoteClass: MarshalByRefObject
25{
26
27 공개 GAMSRemoteClass()
28{
29Console.WriteLine("생성자");
30}
31
33{
34Console.WriteLine("파괴자");
35}
36
37 공개 int실행서버(문자열ModelText,바이트[] GDXIn파일,바이트[] 매개변수파일, 참조바이트[] GDXOut파일, 참조문자열로그 출력, 참조문자열메시지)
38{
39 시도
40{
41 부울f디버그 =거짓;
42
43 if(ModelText.Length == 0)
44{
45메시지 ="모델 텍스트가 수신되지 않았습니다";
46 반환1;
47}
48
51 if(ParameterFile.Length > 0)
52{
53 문자열ParameterFileName = Path.Combine(ws.작업 디렉터리, ws.ScratchFilePrefix+ Path.GetRandomFileName());
54 if(f디버그)
55Console.WriteLine("매개변수 파일 작성 중:"+ 매개변수파일이름);
56File.WriteAllBytes(ParameterFileName, ParameterFile);
57opt = ws.추가옵션(optFile: ParameterFileName);
58 if(!f디버그)
59파일.삭제(매개변수파일 이름);
60}
61
62 문자열GDXInFileName = Path.Combine(ws.작업 디렉터리, ws.ScratchFilePrefix+ Path.GetRandomFileName());
63 문자열GDXOutFileName = Path.Combine(ws.작업 디렉터리, ws.ScratchFilePrefix+ Path.GetRandomFileName());
64
65 if(GDXInFile.Length > 0)
66{
67 if(f디버그)
68Console.WriteLine("GDX 파일 작성 중:"+ GDXIn파일 이름);
69File.WriteAllBytes(GDXInFileName, GDXInFile);
70선택.정의["GDXIn파일"] = GDXInFileName;
71}
72선택.정의["GDXOut파일"] = GDXOutFileName;
73
74 if(f디버그)
75Console.WriteLine("작업 시작 중...");
76
77StringWriter 로그 =신규StringWriter();
78 GAMSJob직업 = ws.AddJobFromString(ModelText);
79직업.실행(선택, 기록,거짓);
80LogOutput = log.ToString();
81
82 if(f디버그)
83Console.WriteLine("GDXOut 파일 읽는 중: "+ GDXOut파일 이름);
84GDXOutFile = File.ReadAllBytes(GDXOutFileName);
85
86 if(!f디버그)
87{
88파일.삭제(GDXInFileName);
89파일.삭제(GDXOutFileName);
90}
91메시지 ="성공적인 실행";
92 반환0;
93
94}
95 잡기(예외 예)
96{
97Console.WriteLine("오류:\n0", 예: 메시지);
98메시지 = ex.메시지;
99 반환1;
100}
101}
102
103
104}
105}
이 예는 간단한 크레이지 슬롯 서버를 구현하는 방법을 보여줍니다. 이 예는 두 부분으로 구성됩니다: GAMSServe...
void Run(GAMSOptions gamsOptions=null, GAMSCheckpoint 체크포인트=null, TextWriter 출력=null, Boolean createOutDB=true)
사전< 문자열, 문자열 > 정의
GAMSJob AddJobFromString(문자열 gamsSource, GAMSCheckpoint 체크포인트=null, 문자열 jobName=null)
GAMSOptions AddOptions(GAMSOptions optFrom=null)