fix v++
This commit is contained in:
@@ -46,8 +46,8 @@ public abstract class LinuxLocalTaskSupervisor<T extends Task> extends LocalTask
|
||||
@Override
|
||||
public void WaitForTask() throws Exception {
|
||||
if (isTaskActive()) {
|
||||
if (task.PID.isEmpty())
|
||||
throw new PassException("Ошибка при старте : идентификатор задачи не определен.");
|
||||
// if (task.PID.isEmpty())
|
||||
// throw new PassException("Ошибка при старте : идентификатор задачи не определен.");
|
||||
task.StartDate = (new Date()).getTime();
|
||||
pass.ShowMessage1("Задача активна, идентификатор " + Utils_.Brackets(task.PID));
|
||||
RefreshProgress();
|
||||
|
||||
@@ -30,7 +30,7 @@ public class RemoteCompilationSupervisor extends RemoteTaskSupervisor<Compilatio
|
||||
}
|
||||
@Override
|
||||
protected void StartTask() throws Exception {
|
||||
task.PID = pass.user.connection.startShellProcess(getRemoteProject(), "PID", getStartCommand());
|
||||
pass.user.connection.startShellProcess(getRemoteProject(), "PID", getStartCommand());
|
||||
task.state = TaskState.Running;
|
||||
}
|
||||
@Override
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package _VisualDVM.GlobalData.Tasks.Supervisor.Remote;
|
||||
import Common.CommonConstants;
|
||||
import Common.Passes.PassException;
|
||||
import Common.Utils.Utils_;
|
||||
import _VisualDVM.Constants;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.GlobalData.RemoteFile.RemoteFile;
|
||||
import _VisualDVM.GlobalData.Tasks.Supervisor.TaskSupervisor;
|
||||
import _VisualDVM.GlobalData.Tasks.Task;
|
||||
@@ -61,6 +63,16 @@ public abstract class RemoteTaskSupervisor<T extends Task> extends TaskSuperviso
|
||||
}
|
||||
@Override
|
||||
protected void AbortTask() throws Exception {
|
||||
//1 прочитать пид
|
||||
if (task.PID.isEmpty()) {
|
||||
RemoteFile PID = getPID();
|
||||
if (pass.user.connection.Exists(PID)) {
|
||||
task.PID = pass.user.connection.readFromFile(PID).replace("\n", "").replace("\r", "");
|
||||
Global.mainModule.getDb().Update(task);
|
||||
} else {
|
||||
throw new PassException("файл PID не найден");
|
||||
}
|
||||
}
|
||||
pass.user.connection.Command("kill -2 " + task.PID);
|
||||
}
|
||||
@Override
|
||||
|
||||
@@ -18,8 +18,8 @@ public class ServerRunSupervisor extends RemoteTaskSupervisor<RunTask> {
|
||||
String env = String.join(" ", MainModule_.instance.getDb().getTable(RunConfiguration.class).getUI().getCurrent().getEnvList());
|
||||
if (!env.isEmpty()) res = env + " " + res;
|
||||
//--
|
||||
task.PID = pass.user.connection.startShellProcess(getRemoteProject(), "PID",
|
||||
"ulimit -s unlimited", res);
|
||||
// task.PID =
|
||||
pass.user.connection.startShellProcess(getRemoteProject(), "PID", res);
|
||||
task.state = TaskState.Running;
|
||||
}
|
||||
@Override
|
||||
|
||||
@@ -114,10 +114,10 @@ public abstract class TaskSupervisor<T extends Task, P extends Pass> {
|
||||
}
|
||||
public void WaitForTask() throws Exception {
|
||||
if (isTaskActive()) {
|
||||
if (task.PID.isEmpty())
|
||||
throw new PassException("Ошибка при старте : идентификатор задачи не определен.");
|
||||
// if (task.PID.isEmpty())
|
||||
// throw new PassException("Ошибка при старте : идентификатор задачи не определен.");
|
||||
task.StartDate = (new Date()).getTime();
|
||||
pass.ShowMessage1("Задача активна, идентификатор " + Utils_.Brackets(task.PID));
|
||||
pass.ShowMessage1("Задача активна");//, идентификатор " + Utils_.Brackets(task.PID));
|
||||
RefreshProgress();
|
||||
do {
|
||||
Thread.sleep(getTaskCheckPeriod() * 1000);
|
||||
|
||||
Reference in New Issue
Block a user