task-queue
Advanced tools
+48
-33
@@ -41,4 +41,4 @@ <?xml version="1.0" encoding="UTF-8"?> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.66129035" vertical-offset="1490" max-vertical-offset="1980"> | ||
| <caret line="113" column="49" selection-start-line="113" selection-start-column="49" selection-end-line="113" selection-end-column="49" /> | ||
| <state vertical-scroll-proportion="0.67741936" vertical-offset="1080" max-vertical-offset="2100"> | ||
| <caret line="86" column="30" selection-start-line="86" selection-start-column="30" selection-end-line="86" selection-end-column="30" /> | ||
| <folding /> | ||
@@ -56,3 +56,3 @@ </state> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.07322654" vertical-offset="13" max-vertical-offset="540"> | ||
| <state vertical-scroll-proportion="0.10297483" vertical-offset="0" max-vertical-offset="540"> | ||
| <caret line="3" column="21" selection-start-line="3" selection-start-column="21" selection-end-line="3" selection-end-column="21" /> | ||
@@ -67,6 +67,6 @@ <folding /> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="-13.2" vertical-offset="0" max-vertical-offset="1710"> | ||
| <caret line="22" column="0" selection-start-line="22" selection-start-column="0" selection-end-line="22" selection-end-column="0" /> | ||
| <state vertical-scroll-proportion="25.16" vertical-offset="1199" max-vertical-offset="1740"> | ||
| <caret line="38" column="31" selection-start-line="38" selection-start-column="31" selection-end-line="38" selection-end-column="31" /> | ||
| <folding> | ||
| <marker date="1409539292868" expanded="true" signature="212:295" placeholder="..." /> | ||
| <marker date="1409545314984" expanded="true" signature="212:295" placeholder="..." /> | ||
| </folding> | ||
@@ -77,2 +77,15 @@ </state> | ||
| </file> | ||
| <file leaf-file-name="README.md" pinned="false" current="false" current-in-tab="false"> | ||
| <entry file="file://$PROJECT_DIR$/README.md"> | ||
| <provider editor-type-id="MarkdownPreviewEditor"> | ||
| <state /> | ||
| </provider> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="-6.423077" vertical-offset="943" max-vertical-offset="1380"> | ||
| <caret line="74" column="0" selection-start-line="74" selection-start-column="0" selection-end-line="74" selection-end-column="0" /> | ||
| <folding /> | ||
| </state> | ||
| </provider> | ||
| </entry> | ||
| </file> | ||
| </leaf> | ||
@@ -98,5 +111,6 @@ </split-second> | ||
| <option value="$PROJECT_DIR$/lib/tq.js" /> | ||
| <option value="$PROJECT_DIR$/.npmignore" /> | ||
| <option value="$PROJECT_DIR$/src/tq.coffee" /> | ||
| <option value="$PROJECT_DIR$/README.md" /> | ||
| <option value="$PROJECT_DIR$/test/tqSpec.coffee" /> | ||
| <option value="$PROJECT_DIR$/.npmignore" /> | ||
| <option value="$PROJECT_DIR$/package.json" /> | ||
@@ -372,3 +386,3 @@ </list> | ||
| <folding> | ||
| <marker date="1409539292868" expanded="true" signature="212:295" placeholder="..." /> | ||
| <marker date="1409545314984" expanded="true" signature="212:295" placeholder="..." /> | ||
| </folding> | ||
@@ -407,3 +421,3 @@ </state> | ||
| <folding> | ||
| <marker date="1409539292868" expanded="true" signature="212:295" placeholder="..." /> | ||
| <marker date="1409545314984" expanded="true" signature="212:295" placeholder="..." /> | ||
| </folding> | ||
@@ -442,3 +456,3 @@ </state> | ||
| <folding> | ||
| <marker date="1409539292868" expanded="true" signature="212:295" placeholder="..." /> | ||
| <marker date="1409545314984" expanded="true" signature="212:295" placeholder="..." /> | ||
| </folding> | ||
@@ -582,16 +596,14 @@ </state> | ||
| </entry> | ||
| <entry file="file://$PROJECT_DIR$/README.md"> | ||
| <entry file="file://$PROJECT_DIR$/lib/tq.js"> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="787"> | ||
| <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> | ||
| <state vertical-scroll-proportion="0.03348214" vertical-offset="645" max-vertical-offset="2895"> | ||
| <caret line="44" column="32" selection-start-line="44" selection-start-column="32" selection-end-line="44" selection-end-column="32" /> | ||
| <folding /> | ||
| </state> | ||
| </provider> | ||
| <provider editor-type-id="MarkdownPreviewEditor"> | ||
| <state /> | ||
| </provider> | ||
| </entry> | ||
| <entry file="file://$PROJECT_DIR$/lib/tq.js"> | ||
| <entry file="file://$PROJECT_DIR$/.npmignore"> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.03348214" vertical-offset="645" max-vertical-offset="2895"> | ||
| <caret line="44" column="32" selection-start-line="44" selection-start-column="32" selection-end-line="44" selection-end-column="32" /> | ||
| <state vertical-scroll-proportion="0.06507592" vertical-offset="0" max-vertical-offset="461"> | ||
| <caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" /> | ||
| <folding /> | ||
@@ -609,6 +621,17 @@ </state> | ||
| </entry> | ||
| <entry file="file://$PROJECT_DIR$/README.md"> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="-6.423077" vertical-offset="943" max-vertical-offset="1380"> | ||
| <caret line="74" column="0" selection-start-line="74" selection-start-column="0" selection-end-line="74" selection-end-column="0" /> | ||
| <folding /> | ||
| </state> | ||
| </provider> | ||
| <provider editor-type-id="MarkdownPreviewEditor"> | ||
| <state /> | ||
| </provider> | ||
| </entry> | ||
| <entry file="file://$PROJECT_DIR$/test/tqSpec.coffee"> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.66129035" vertical-offset="1490" max-vertical-offset="1980"> | ||
| <caret line="113" column="49" selection-start-line="113" selection-start-column="49" selection-end-line="113" selection-end-column="49" /> | ||
| <state vertical-scroll-proportion="0.67741936" vertical-offset="1080" max-vertical-offset="2100"> | ||
| <caret line="86" column="30" selection-start-line="86" selection-start-column="30" selection-end-line="86" selection-end-column="30" /> | ||
| <folding /> | ||
@@ -620,6 +643,6 @@ </state> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="-13.2" vertical-offset="0" max-vertical-offset="1710"> | ||
| <caret line="22" column="0" selection-start-line="22" selection-start-column="0" selection-end-line="22" selection-end-column="0" /> | ||
| <state vertical-scroll-proportion="25.16" vertical-offset="1199" max-vertical-offset="1740"> | ||
| <caret line="38" column="31" selection-start-line="38" selection-start-column="31" selection-end-line="38" selection-end-column="31" /> | ||
| <folding> | ||
| <marker date="1409539292868" expanded="true" signature="212:295" placeholder="..." /> | ||
| <marker date="1409545314984" expanded="true" signature="212:295" placeholder="..." /> | ||
| </folding> | ||
@@ -629,13 +652,5 @@ </state> | ||
| </entry> | ||
| <entry file="file://$PROJECT_DIR$/.npmignore"> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.06507592" vertical-offset="0" max-vertical-offset="461"> | ||
| <caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" /> | ||
| <folding /> | ||
| </state> | ||
| </provider> | ||
| </entry> | ||
| <entry file="file://$PROJECT_DIR$/package.json"> | ||
| <provider selected="true" editor-type-id="text-editor"> | ||
| <state vertical-scroll-proportion="0.07322654" vertical-offset="13" max-vertical-offset="540"> | ||
| <state vertical-scroll-proportion="0.10297483" vertical-offset="0" max-vertical-offset="540"> | ||
| <caret line="3" column="21" selection-start-line="3" selection-start-column="21" selection-end-line="3" selection-end-column="21" /> | ||
@@ -642,0 +657,0 @@ <folding /> |
+20
-9
@@ -53,13 +53,24 @@ // Generated by CoffeeScript 1.8.0 | ||
| return function() { | ||
| var _ref, _ref1; | ||
| deq.method.apply((_ref = deq.context) != null ? _ref : null, (_ref1 = deq.args) != null ? _ref1 : null); | ||
| var task_return, _ref, _ref1; | ||
| task_return = deq.method.apply((_ref = deq.context) != null ? _ref : null, (_ref1 = deq.args) != null ? _ref1 : null); | ||
| if (_this.finishedTask != null) { | ||
| setImmediate(function() { | ||
| return _this.finishedTask(task_return); | ||
| }); | ||
| } | ||
| if (--actual_concurrency === 0) { | ||
| if (_this._singleShot && _this.size() === 0) { | ||
| _this._singleShot = false; | ||
| _this._running = false; | ||
| if (_this.size() === 0) { | ||
| if (_this.finished != null) { | ||
| setImmediate(function() { | ||
| return _this.finished(); | ||
| }); | ||
| } | ||
| if (_this._singleShot && _this.size() === 0) { | ||
| _this._singleShot = false; | ||
| _this._running = false; | ||
| } | ||
| } | ||
| _this._exec; | ||
| if (_this.finished != null) { | ||
| return setTimeout(_this.finished, _this.opts.timeout); | ||
| } | ||
| return setTimeout((function() { | ||
| return _this._exec(); | ||
| }), _this.opts.timeout); | ||
| } | ||
@@ -66,0 +77,0 @@ }; |
+2
-2
| { | ||
| "author" : "Roberto Sales <robertosalesc@dcc.ufba.br>", | ||
| "name": "task-queue", | ||
| "version": "1.0.1", | ||
| "version": "1.0.2", | ||
| "description": "async single worker tasks queue that supports concurrency, priority and provide simple interface for passing task arguments", | ||
@@ -12,3 +12,3 @@ "keywords": ["task", "queue", "worker", "concurrency", "async", "priority"], | ||
| "type": "git", | ||
| "url": "http://github.com/skywalkerd/task-queue.git" | ||
| "url": "http://github.com/rsalesc/task-queue.git" | ||
| }, | ||
@@ -15,0 +15,0 @@ "dependencies": |
@@ -8,2 +8,8 @@ | ||
| count_fn = (fn, target_count) -> | ||
| return (args...) -> | ||
| fn(args...) if --target_count is 0 | ||
| return null | ||
| # test | ||
@@ -80,4 +86,6 @@ | ||
| it 'should call finished', (done) -> | ||
| it 'should call finished and finishedTask twice', (done) -> | ||
| done = count_fn(done, 3) | ||
| q.finished = -> done() | ||
| q.finishedTask = -> done() | ||
| q.start() | ||
@@ -84,0 +92,0 @@ |
54421
11.53%286
4%87
8600%