29 lines · 421 B · Text
RawDownload
use stduse sysuse "mutex"use "tls" pkg thread =;; var memlckvar netlckvar envlckvar stdtls const __init__ = {	memlck = mkmtx()	netlck = mkmtx()	envlck = mkmtx()	stdtls = tlsalloc()	std.__lockinit( \		(&memlck : void#), \		(&netlck : void#), \		(&envlck : void#), \		{mtx; mtxlock((mtx : mutex#))}, \		{mtx; mtxunlock((mtx : mutex#))}, \		{; -> tlsget(stdtls)}, \		{val; tlsset(stdtls, val)} \	)}