title: Completion handler never called
body: <p>I have a function like this. </p>
  
  <pre><code>class func getAccountBalances(completionHandler:@escaping ((_ balances:Any) -&gt; Void)){
  //Alamofire request and we get the result. But sometimes the result fails.
      switch response.result {
      case .success(let value):
          completionHandler(value)
      case .failure(let error):
          print ("error is: \(error)")
  }
  </code></pre>
  
  <p>I am not putting code to handle the result if it fails. Is that a bad thing? Do I need to have a completion handler in the case that the call fails so that this function does not stay in the memory waiting for that completion handler to be called? What is the best practice?</p>