Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 随时停止进一步的代码处理_Vb.net - Fatal编程技术网

Vb.net 随时停止进一步的代码处理

Vb.net 随时停止进一步的代码处理,vb.net,Vb.net,如何在代码过程的任何一点中断整个过程。假设我有一个如下的代码过程: MethodA: (classX) Dim _repRunner As New ReportRunner() _repRunner.Run Process flow: (start process) class(X)MethodA->class(f)MethodB->class(g)MethodC->class(g)MetodC->class(h)MethodD->class(i)MethodE-

如何在代码过程的任何一点中断整个过程。假设我有一个如下的代码过程:

MethodA: (classX)
Dim _repRunner As New ReportRunner()
_repRunner.Run

Process flow:
(start process) class(X)MethodA->class(f)MethodB->class(g)MethodC->class(g)MetodC->class(h)MethodD->class(i)MethodE->class(i)MethodF->(classX)MethodA (end proceess)

让我们假设在MethodC中,我想中断进一步的过程。我不想在访问下一个函数之前总是让所有函数返回布尔值。有没有办法中断根对象调用并返回?

取决于您所说的“中断”是什么意思。如果您的意思是“停止处理以响应某个事件”,那么我们需要确定该事件是如何暴露给您的代码的

现在让我们假设一个“break”事件设置了一个名为
Globals.BreakRequested
的变量。然后您只需要修改代码,如下所示:

class f
{
    public bool MethodB()
    {
        bool result = DoSomething();
        if (Globals.BreakRequested) return result;
        var next = new g();
        return next.MethodC(result);
    }
}

您需要以不同的方式构造代码,并利用条件块,否则将在try/catch中引发异常。所谓中断,我的意思是停止进一步(例如,我可以制作一些日志)并停止执行下一个方法。。。回到根方法(MethodA),我理解,但这不是很具体。只要使用return关键字,代码就会停止执行。我想你想要更具体的东西。是的,但返回只会从当前范围中消失。对。调用方法也必须返回,以此类推,直到你到达你想去的地方。我不完全理解你的要求。“休息”是如何开始的?您的代码如何知道何时需要中断?