I wonder if the TryLock() call in the TryOptimisticRead() (used here as an acquire barrier/half fence) is making the race detector happy enough.
-Bruno On Fri, Jan 31, 2025 at 11:51 AM Bruno Albuquerque <[email protected]> wrote: > Ops. There was a bug due to left over of me testing. Here is a fixed > version: > > https://go.dev/play/p/UuIWVlV0UTN > > Also, don't try to run in the playground as this runs forever (it could be > changed but I am lazy). > > -Bruno > > > On Fri, Jan 31, 2025 at 11:31 AM Bruno Albuquerque <[email protected]> wrote: > >> This seemed expected to me but I went ahead and created a Go >> implementation (which might not be 100% correct so take it for what it >> will) and I was surprised that the race detector did not really complain >> about anything. >> >> https://go.dev/play/p/R1alMCc-xN9 >> >> -Bruno >> >> >> On Fri, Jan 31, 2025, 6:13 AM Robert Engels <[email protected]> >> wrote: >> >>> Hi, >>> >>> Do you think it is possible to implement a stamped lock in Go >>> https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/StampedLock.html >>> ? >>> >>> It would seem that the Go race detector would always report the >>> “optimistic read” mode as a data race? >>> >>> (The docs state for Java that the values can be wildly inconsistent when >>> the optimistic read fails). >>> >>> Ideas on how to implement in Go? >>> >>> -- >>> 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 [email protected]. >>> To view this discussion visit >>> https://groups.google.com/d/msgid/golang-nuts/FBEB055A-2B84-4738-AE22-C22ABAC8C4A9%40ix.netcom.com >>> <https://groups.google.com/d/msgid/golang-nuts/FBEB055A-2B84-4738-AE22-C22ABAC8C4A9%40ix.netcom.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- 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 [email protected]. To view this discussion visit https://groups.google.com/d/msgid/golang-nuts/CAEd86TzOW8%3D2_FPFTEfrnpEigcfT2XtYX2A4F7Eu28ZENRMmPw%40mail.gmail.com.
