• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

gambol99 / go-marathon / 644
71%
master: 69%

Build:
Build:
LAST BUILD BRANCH: cluster
DEFAULT BRANCH: master
Ran 04 Dec 2018 09:32AM UTC
Jobs 1
Files 9
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
644

Pull #163

travis-ci

timoreimann
Signal goroutine termination on event listener removal.

Fixes goroutine/memory leakage where an event consumer would stop
receiving events from the channel while pending goroutines were still
trying to deliver some.

The chosen approach only makes sense with unbuffered channels due to the
`select` involved; as such, we change AddEventListener's signature to
return a channel to the consumer instead of expecting one. Passing
buffered channels to AddEventListener was never overly useful in the
first place, however, as we use goroutines to avoid blocking on slow
receivers, implictly doing event buffering this way already.

Changes in detail:

- Modify AddEventListener's signature.
- Change listener's value type to struct holding both filters and a
  per-listener done channel.
- Close done channel on RemoveEventListener, and select between outbound
  and done channel in event-processing goroutine.
- Extend tests.
- Make existing tests more robust.
- Update examples.
- Update README file.
Pull Request #163:

18 of 83 branches covered (21.69%)

390 of 551 relevant lines covered (70.78%)

0.71 hits per line

Jobs
ID Job ID Ran Files Coverage
1 644.1 04 Dec 2018 09:32AM UTC 0
70.78
Travis Job 644.1
Source Files on build 644
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #644
  • Pull Request #163
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc