• Alan Donovan's avatar
    go/token: use fine-grained locking in FileSet · 17ba830f
    Alan Donovan authored
    Before, all accesses to the lines and infos tables of each File were
    serialized by the lock of the owning FileSet, causing parsers running
    in parallel to contend.  Now, each File has its own mutex.
    
    This fixes a data race in (*File).PositionFor, which used to call
    f.position then f.unpack without holding the mutex's lock.
    
    Fixes golang/go#18348
    
    Change-Id: Iaa5989b2eba88a7fb2e91c1a0a8bc1e7f6497f2b
    Reviewed-on: https://go-review.googlesource.com/34591Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
    Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    17ba830f
Name
Last commit
Last update
.github Loading commit data...
api Loading commit data...
doc Loading commit data...
lib/time Loading commit data...
misc Loading commit data...
src Loading commit data...
test Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
CONTRIBUTING.md Loading commit data...
CONTRIBUTORS Loading commit data...
LICENSE Loading commit data...
PATENTS Loading commit data...
README.md Loading commit data...
favicon.ico Loading commit data...
robots.txt Loading commit data...