浏览代码

Progressively increment polling interval on queue page

Gaël Métais 10 年之前
父节点
当前提交
0e5c7e1215
共有 1 个文件被更改,包括 7 次插入2 次删除
  1. 7 2
      front/src/js/controllers/queueCtrl.js

+ 7 - 2
front/src/js/controllers/queueCtrl.js

@@ -2,13 +2,18 @@ var queueCtrl = angular.module('queueCtrl', ['runsFactory']);
 
 queueCtrl.controller('QueueCtrl', ['$scope', '$routeParams', '$location', 'Runs', function($scope, $routeParams, $location, Runs) {
     $scope.runId = $routeParams.runId;
+
+    var numberOfTries = 0;
     
     function getRunStatus () {
         Runs.get({runId: $scope.runId}, function(data) {
             $scope.status = data.status;
             if (data.status.statusCode === 'running' || data.status.statusCode === 'awaiting') {
-                // Retrying in 2 seconds
-                setTimeout(getRunStatus, 2000);
+                numberOfTries ++;
+
+                // Retrying in 2 seconds (and increasing the delay a bit more each time)
+                setTimeout(getRunStatus, 2000 + (numberOfTries * 100));
+
             } else if (data.status.statusCode === 'complete') {
                 $location.path('/result/' + $scope.runId);
             } else {