Socket.io: async/рдкреНрд░рддреАрдХреНрд╖рд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 9 рдЕрдЧре░ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: socketio/socket.io

рдореИрдВ рдХреЛрдЖ v2 рдХреЗ рд╕рд╛рде socket.io рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред
рдХреНрдпрд╛ рдореИрдВ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рдПрдХ рдИрд╡реЗрдВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдПрд╕рд┐рдВрдХреНрд╕ рдлрд╝рдВрдХреНрд╢рди рдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ,
рдареАрдХ рд╡реИрд╕рд╛:

socket.on('message', async () => {
  const some1 = await fun1()
  const some2 = await fun2()
  socket.emit('reply', some1, some2)
  ... 
})

рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, async funtion рд╕рд┐рд░реНрдл рд╡рд╛рджреЗ рдХрд╛ рдПрдХ рдЖрд╡рд░рдг рд╣реИред
рдХреНрдпрд╛ рдХреЛрдИ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд╕реНрдпрд╛ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

Google рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ await рдФрд░ socket.io рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЕрд╡рдЧрдд рд░рд╣реЗрдВ:

https://github.com/socketio/socket.io/issues/3431

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ fun1 рдпрд╛ fun2 рдлреЗрдВрдХ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк try/catch рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ

рдмрд╣реБрдд рдмрд╣реБрдд рд╢реБрдХреНрд░рд┐рдпрд╛ : )

Google рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ await рдФрд░ socket.io рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЕрд╡рдЧрдд рд░рд╣реЗрдВ:

https://github.com/socketio/socket.io/issues/3431

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

dmuth picture dmuth  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

shashuec picture shashuec  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

doughsay picture doughsay  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MichaelJCole picture MichaelJCole  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Elliot9 picture Elliot9  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ