작업 삭제

작업 삭제

런타임 시 작업을 삭제할 수 있습니다. 삭제한 작업은 실행할 수 없습니다.

Stop()
메서드

각 비동기 작업은 NetLogic 상위 노드가 제거될 때 자동으로 종료됩니다. 하지만 다음 예제와 같이
Dispose()
메서드를 호출하여
Stop()
메서드 내에서 작업을 삭제하는 것이 좋습니다.
public override void Stop() { myTask.Dispose(); }
중요: 비동기 작업에서
Dispose()
메서드를 호출하면 작업에서 실행한 코드가 호출자에게 컨트롤을 반환할 때까지(작업 상태 제어를 통해 또는 작업 완료를 위해) 메서드가 차단됩니다.

예제

다음 예제에서는 비동기 작업을 만들고, 실행하고, 삭제하는 방법을 보여줍니다.
public override void Start() { myTask = new PeriodicTask(IncrementVariable, 1000, LogicObject) myTask.Start(); } public override void Stop() { myTask.Dispose(); } private void IncrementVariable() { variable1.Value = variable1.Value + 1; } private PeriodicTask myTask;
예에는 다음이 포함됩니다.
  • NetLogic에 포함된 C# 클래스에 비공개 인스턴스 변수(
    private PeriodicTask myTask;
    )를 정의합니다.
    팁: 만들려는 작업 유형에 따라 이 변수의 클래스는
    PeriodicTask
    ,
    DelayedTask
    또는
    LongRunningTask
    여야 합니다.
  • 작업이 실행해야 하는 메서드(
    IncrementVariable()
    )를 정의합니다.
  • 작업을 만듭니다.
    NetLogic에 포함된 C# 클래스의
    Start()
    메서드 내에서 비공개 인스턴스 변수(
    myTask
    )는 클래스 생성자(
    PeriodicTask
    )를 사용하여 초기화됩니다.
    팁: 생성자에는 생성자가 속한 클래스에 따라 다양한 인수가 필요합니다. 비동기 작업 항목을 참조하십시오.
  • 런타임에 NetLogic이 초기화되는 즉시 작업을 실행합니다.
    NetLogic에 포함된 C# 클래스의
    Start()
    메서드 내에서
    Start()
    메서드는 작업(
    myTask.Start()
    )에 대해 호출됩니다.
  • Dispose()
    메서드를 호출하여
    Stop()
    메서드에서 작업을 삭제합니다.
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal