Ticket #253 (new Bugs)
Clean thread management for input.http() (and input.harbor())
| Reported by: | mrpingouin | Owned by: | admin |
|---|---|---|---|
| Priority: | 1 | Milestone: | |
| Component: | Liquidsoap | Version: | |
| Keywords: | Cc: | ||
| Mac OSX: | yes | Linux: | yes |
| NetBSD: | yes | Other Operating System: | yes |
| FreeBSD: | yes |
Description
Currently, when an input.http goes to #sleep, it asks its feeding thread to exit, but does not check that it exited. As a consequence, a #wake_up quickly after the #sleep could cause (1) the old thread to not exit and hence (2) two feeding threads at the same time.
(Another slightly related issue is that the feeding thread might have non-trivial activity during the shutdown phase: it can be in the middle of a connection when shutdown starts, and we have to wait for it to start decoding before that it notices that it should exit.)
Change History
Note: See
TracTickets for help on using
tickets.
