
#9539: TQueue can lead to thread starvation -------------------------------------+------------------------------------- Reporter: jwlato | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Core Libraries | Version: 7.8.2 Resolution: | Keywords: stm Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by WrenThornton): While not necessarily a solution to the problems with `TQueue` itself, users running into issues with overactive writers can always use stm- chans's `TBMQueue` which is a bounded (and closable) variant of `TQueue` which has already been vetted by various folks. (Though of course if folks find infelicities with the current implementation, I'm always open to receive patches and bugreports.) On the whole, from my experience in this domain, it's too much to expect a single implementation to satisfy all users' needs. Things like realtime queues certainly have their place, as do bare-bones queues, and explicitly bounded queues, as do queues where popping is forever and the element gets dropped on the floor in the event of transaction rollback, and so on. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9539#comment:24 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler