add_reboot #4
|
|
@ -8,10 +8,13 @@ namespace Reseter2
|
||||||
{
|
{
|
||||||
class ReseterTask
|
class ReseterTask
|
||||||
{
|
{
|
||||||
|
private Task task;
|
||||||
private IComp Comp;
|
private IComp Comp;
|
||||||
private AStatusTask StatusTask;
|
private AStatusTask StatusTask;
|
||||||
private TaskControl taskControl;
|
private TaskControl taskControl;
|
||||||
private Pinger Pingers;
|
private Pinger Pingers;
|
||||||
|
public delegate void DataEvents(string ping, string timeout);
|
||||||
|
public event DataEvents DataChange;
|
||||||
|
|
||||||
public ReseterTask(IComp comp, TaskControl taskCntrl)
|
public ReseterTask(IComp comp, TaskControl taskCntrl)
|
||||||
{
|
{
|
||||||
|
|
@ -19,15 +22,30 @@ namespace Reseter2
|
||||||
taskControl = taskCntrl;
|
taskControl = taskCntrl;
|
||||||
StatusTask = new StatusPreReboot(this);
|
StatusTask = new StatusPreReboot(this);
|
||||||
Pingers = new Pinger(Comp.GetName());
|
Pingers = new Pinger(Comp.GetName());
|
||||||
|
DataChange += taskControl.DataContrl;
|
||||||
}
|
}
|
||||||
public string GetName()
|
public string GetName()
|
||||||
{
|
{
|
||||||
return Comp.GetName();
|
return Comp.GetName();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Tick()
|
public async Task Tick()
|
||||||
{
|
{
|
||||||
StatusTask.Tick();
|
if (task != null)
|
||||||
|
{
|
||||||
|
if (task.IsCompleted){
|
||||||
|
//this.DataContrl(Ping().ToString(), Timeout().ToString());
|
||||||
|
await task;
|
||||||
|
|
||||||
|
task = Task.Run(StatusTask.Tick);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
task = Task.Run(StatusTask.Tick);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public long Ping()
|
public long Ping()
|
||||||
|
|
@ -41,7 +59,8 @@ namespace Reseter2
|
||||||
|
|
||||||
public void DataContrl(string ping, string timeout)
|
public void DataContrl(string ping, string timeout)
|
||||||
{
|
{
|
||||||
taskControl.DataContrl(ping, timeout);
|
// taskControl.Invoke(DataChange);
|
||||||
|
DataChange.Invoke(ping, timeout);
|
||||||
}
|
}
|
||||||
private void Clear()
|
private void Clear()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -95,5 +95,8 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="App.config" />
|
<None Include="App.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="NewFolder1\" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -16,8 +16,8 @@ namespace Reseter2
|
||||||
public override void Tick()
|
public override void Tick()
|
||||||
{
|
{
|
||||||
time++;
|
time++;
|
||||||
|
|
||||||
resetertask.DataContrl(resetertask.Ping().ToString(), resetertask.Timeout().ToString());
|
resetertask.DataContrl(resetertask.Ping().ToString(), resetertask.Timeout().ToString());
|
||||||
|
|
||||||
}
|
}
|
||||||
public override void Next()
|
public override void Next()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue