code: function run() {
      var template;
      $ionicTemplateCache._runCount++;
  
      hasRun = true;
      // ignore if race condition already zeroed out array
      if (toCache.length === 0) return;
  
      var i = 0;
      while (i < 4 && (template = toCache.pop())) {
        // note that inline templates are ignored by this request
        if (isString(template)) $http.get(template, { cache: $templateCache });
        i++;
      }
      // only preload 3 templates a second
      if (toCache.length) {
        $timeout(run, 1000);
      }
    }
docs: run through methods - internal method