Which looks like...? On Tue, Dec 3, 2019, 4:50 PM Robert Engels <reng...@ix.netcom.com> wrote:
> I would use an atomic and a lock instead of two locks. > > > On Dec 3, 2019, at 6:35 PM, burak serdar <bser...@computer.org> wrote: > > > > On Tue, Dec 3, 2019 at 5:21 PM Liam Breck <networkimp...@gmail.com> > wrote: > >> > >> I have a problem that is trivially solved via > >> > >> door sync.RWMutex > >> > >> func Reader() T { > >> if !door.TryRLock() { // missing in stdlib :-( > >> return busy > >> } > >> defer door.RUnlock() > >> ... > >> } > >> > >> func Writer() { > >> door.Lock() > >> defer door.Unlock() > >> ... > >> } > >> > >> How does one achieve this in Go? > > > > Two locks and a bool? > > > > var door=sync.Mutex{} > > var x=sync.Mutex{} > > var b bool > > > > func trylock() bool { > > x.Lock() > > if b { > > x.Unlock() > > return false > > } > > b=true > > door.Lock() > > x.Unlock() > > return true > > } > > > > unlock: > > > > x.Lock() > > b=false > > door.Unlock() > > x.Unlock() > > > > > > > > > >> > >> -- > >> You received this message because you are subscribed to the Google > Groups "golang-nuts" group. > >> To unsubscribe from this group and stop receiving emails from it, send > an email to golang-nuts+unsubscr...@googlegroups.com. > >> To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/CAKvHMgTO%3DxfFQ_u7aO9UE-1vHHEKmdhr47sro2mnp6DkEb6mPA%40mail.gmail.com > . > > > > -- > > You received this message because you are subscribed to the Google > Groups "golang-nuts" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to golang-nuts+unsubscr...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/CAMV2RqrDeBNhkeswg%2BhdCf1kSzMEJduota%3D6UrNq4z2PQRtzEQ%40mail.gmail.com > . > > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAKvHMgQROw%3DoxSP%2BT3m_woZXX4ke3gP02BpXiFMv-1Nb9cs-tA%40mail.gmail.com.