You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 8, 2022. It is now read-only.
Repository navigation
This repository was archived by the owner on Jun 8, 2022. It is now read-only.
This is a request that came up earlier that I almost forgot about. Creating issue so I remember.
Desire is to have the library send events/errors using select so that the receiving application can be monitoring the channels without the use of a separate goroutine.
Right. I suppose this is only an issue on some platforms (old linux? I saw some mentioning of the lowest linux denominator being too low to stop this from happening). Anyway, I'll run it in a separate goroutine for the time being and monitor this space. I'd love to be able to safely use it in single-threaded mode. As it stands, it's not very obvious one needs to do this goroutine trick. Thanks for the update!
At GopherCon India last month, Alan Shreve gave a talk on Principles of designing Go APIs with channels which i thought might be relevant for this issue in FSNotify since I too had to puzzle through the sources to check if it's using blocking channels... Specifically An API that sends an unbounded stream of values into a channel must document how it behaves for slow consumers
Activity
nathany commentedon Sep 4, 2013
What would this look like? Same channels/API just without requiring a goroutine?
howeyc commentedon Sep 4, 2013
Yes.
On Sep 4, 2013 12:14 PM, "Nathan Youngman" notifications@github.com wrote:
nathany commentedon Jan 16, 2014
Chime in for the os/notify API: http://goo.gl/MrYxyA
aktau commentedon Jul 8, 2014
I'm not sure what makes this single thread unfriendly? Why can't I do something like:
nathany commentedon Jul 8, 2014
See https://code.google.com/p/go/issues/detail?id=8282#c4 for one issue when using code very similar to what you presented.
If you want to take a closer look on multiple platforms, please report your findings at https://github.com/fsnotify/fsnotify/issues/new
aktau commentedon Jul 8, 2014
Right. I suppose this is only an issue on some platforms (old linux? I saw some mentioning of the lowest linux denominator being too low to stop this from happening). Anyway, I'll run it in a separate goroutine for the time being and monitor this space. I'd love to be able to safely use it in single-threaded mode. As it stands, it's not very obvious one needs to do this goroutine trick. Thanks for the update!
srinathh commentedon Mar 15, 2015
At GopherCon India last month, Alan Shreve gave a talk on Principles of designing Go APIs with channels which i thought might be relevant for this issue in FSNotify since I too had to puzzle through the sources to check if it's using blocking channels... Specifically An API that sends an unbounded stream of values into a channel must document how it behaves for slow consumers
nathany commentedon Mar 18, 2015
@srinathh Thanks for the tip. Now that the videos are up, I'll be sure to watch that talk.
first commit 🎉
matthewmueller commentedon May 17, 2020
Is this still an issue? golang/go#8282 (comment)
If so, what would be the non-racey way of doing this?