title: What happens to Durable Functions After Activity Function gets called?
body: <p>So I'm aware in durable functions that when an activity function gets called, the current durable function essentially stops and it waits to start over. My question is how does the original durable function exit? I've done some debugging, and no exception is thrown nor is a value returned. How does it exit?</p>
  <pre><code>   [FunctionName(&quot;DurableFunction&quot;)]
      public static async Task Durable([OrchestrationTrigger] IDurableOrchestrationContext context, ILogger log)
      {
          try
          {
              using (DisposeObject t = new DisposeObject(&quot;We created a new context&quot;, log))
              {
                  string s = context.GetInput&lt;string&gt;();
                  string result = await context.CallActivityAsync&lt;string&gt;(&quot;ActivityFunction&quot;, s);
                  log.LogInformation(result);
              }
          }
          catch (Exception e)
          {
              Console.WriteLine(e.ToString());
          }
          finally
          {
              Console.WriteLine(&quot;When does this get hit?&quot;);
          }
      }
  </code></pre>
  <p>For example, in this example, do disposable object never gets disposed until the end? Is there a way to check when we start a new function?</p>