Promise.using solves all that - give it a spin :) On Tue, Jan 10, 2017 at 2:23 AM, Isiah Meadows <isiahmead...@gmail.com> wrote:
> I'll note that the disposer pattern is a lot like Ruby's resource > management idioms as well (probably closer). The biggest issue I've seen > with it so far is only how hard it is to compose while still avoiding > leaks. Using one resource like that is easy, but joining multiple resources > to use them simultaneously is much harder, and really requires some sort of > abstraction. Promises complicate that further in that you have to > effectively save an async continuation for each resource just to call back > into them when done. Another complication is that some may end up > unsuccessful, so you have to continue those that do succeed. > > As for any decent resource management, the current idioms suck, but I'm > not sure what would be better. > > On Fri, Jan 6, 2017, 04:38 Benjamin Gruenbaum <benjami...@gmail.com> > wrote: > >> Oh, Bluebird's `Promise.using` does that with very high certainly. The >> reason we introduced `using` rather than let people just use the disposer >> pattern is because it is very tricky to get right in userland - so the >> library provided it. >> >> On Fri, Jan 6, 2017 at 2:51 AM, Isiah Meadows <isiahmead...@gmail.com> >> wrote: >> >> It'd be nice to have something like that reified into the language >> somehow. I'll note that Bluebird's gotcha with `Promise.using` >> multiple resources simultaneously is a huge issue, though, and it >> should be avoided for anything standardized. (If one of them fail, the >> rest should be closed either immediately or as soon as they are >> available, to avoid resource leaks.) >> ----- >> >> Isiah Meadows >> m...@isiahmeadows.com >> >> >> On Mon, Jan 2, 2017 at 10:04 AM, Benjamin Gruenbaum >> <benjami...@gmail.com> wrote: >> > And, on a similar note - a pattern has emerged in userland libraries all >> > over: >> > http://stackoverflow.com/questions/28915677/what-is- >> the-promise-disposer-pattern >> > >> > _______________________________________________ >> > es-discuss mailing list >> > es-discuss@mozilla.org >> > https://mail.mozilla.org/listinfo/es-discuss >> > >> >> >>
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss