ΠΠ°ΠΊΡΡ Π²Π΅ΡΡΠΈΡ async Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅?
2.4.1
Π ΠΊΠ°ΠΊΠΎΠΉ ΡΡΠ΅Π΄Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° (Π²Π΅ΡΡΠΈΡ ΡΠ·Π»Π° / Π²Π΅ΡΡΠΈΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ°)
ΡΠ·Π΅Π» 8.0.0
Π§ΡΠΎ ΡΡ ΡΠ΄Π΅Π»Π°Π»?
async=require('async')
_=require('underscore')
async.parallel(_.range(10), function(iter, cb) { cb(null); }, function(err) { console.log(err); })
Π§Π΅Π³ΠΎ Π²Ρ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ?
Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°ΡΡ null.
ΠΠ°ΠΊΠΎΠ² Π±ΡΠ» ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ?
TypeError: wrapAsync(...) is not a function
at /usr/local/lib/node_modules/async/dist/async.js:3830:24
at eachOfArrayLike (/usr/local/lib/node_modules/async/dist/async.js:1003:9)
at eachOf (/usr/local/lib/node_modules/async/dist/async.js:1051:5)
at _parallel (/usr/local/lib/node_modules/async/dist/async.js:3829:5)
at Object.parallelLimit [as parallel] (/usr/local/lib/node_modules/async/dist/async.js:3912:5)
at repl:1:7
at ContextifyScript.Script.runInThisContext (vm.js:44:33)
at REPLServer.defaultEval (repl.js:239:29)
at bound (domain.js:301:14)
at REPLServer.runBound [as eval] (domain.js:314:12)
ΠΠΉ, ΠΌΠΎΡ ΠΎΡΠΈΠ±ΠΊΠ°.
ΠΠ΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π²Ρ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ @tlbtlbtlb ? ΠΡΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ , Ρ ΠΊΠΎΡΠΎΡΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΠ°.
@tlbtlbtlb ΠΠ°ΠΊΠΎΠ²ΠΎ Π±ΡΠ»ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ? Π― ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΡ ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΡ. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ.
Β«ΠΠΉ, ΠΌΠΎΡ ΠΎΡΠΈΠ±ΠΊΠ°Β» - ΡΡΠΎ ΡΠΎΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ ΠΌΠ½Π΅ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΡΠΎΡΠ½Π΅Π½ΠΈΠ΅.
@tlbtlbtlb, Π½Π΅
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ: Ρ ΡΠ΅ΡΠΈΠ» ΡΠ²ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π·Π°ΠΊΠ»ΡΡΠΈΠ² ΡΠ²ΠΎΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π² Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ:
async.parallel([ function(callback) {
self.queues["genetic"].destroy(callback);
}
ΠΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠ΅ΡΠΈΡΡ Π²Π°ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½ΠΎ ΡΠ΅ΡΠΈΠ»Π° ΠΌΠΎΡ!
async.parallel
ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΡΡΠ½ΠΊΡΠΈΠΉ. Π― Π½Π°Π·ΡΠ²Π°Π» ΡΡΠΎ ΠΊΠ°ΠΊ async.each
.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ π
ΠΠ°ΠΊ ΡΠ΅ΡΠΈΡΡ TypeError: wrapAsync (...) Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ
ΠΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠ°ΠΊ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ async.map(array, undefined, callback)
. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Π² ΡΡΠ΅ΠΊΠ΅ Π²ΡΠ·ΠΎΠ²ΠΎΠ².
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Β«ΠΠΉ, ΠΌΠΎΡ ΠΎΡΠΈΠ±ΠΊΠ°Β» - ΡΡΠΎ ΡΠΎΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ ΠΌΠ½Π΅ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΡΠΎΡΠ½Π΅Π½ΠΈΠ΅.