Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src



Module Name:    src
Committed By:   kamil
Date:           Wed Apr 24 11:43:20 UTC 2019

Modified Files:
        src/distrib/sets/lists/comp: mi
        src/distrib/sets/lists/debug: mi
        src/distrib/sets/lists/tests: mi
        src/lib/libpthread: Makefile
        src/tests/lib/libpthread: Makefile
Added Files:
        src/lib/libpthread: call_once.3 call_once.c cnd.3 cnd.c mtx.3 mtx.c
            thrd.3 thrd.c threads.3 threads.h tss.3 tss.c
        src/tests/lib/libpthread: t_call_once.c t_cnd.c t_mtx.c t_thrd.c
            t_tss.c

Log Message:
Add a complete C11 threads(3) implementation

C11 Thread support library is a portable threading C API between OSs,
similar to std::threads in the C++ world.

The library is implemented as a thin shim over POSIX interfaces.

NetBSD implements the API as a part of the POSIX threading library
(libpthread(3)).

C11 threads(3) are in the process of making them an integral part
of the POSIX standard. The interface has been implemented in major
OSs and used with stopgap libraries for older versions of them.

C11 threading library is already used (with a stopgap implementation)
in the NetBSD distribution in MESA.

Original implementation by myself from 2016.

ATF tests are new and cover almost all interfaces.

Proposed on tech-userlevel@.


To generate a diff of this commit:
cvs rdiff -u -r1.2269 -r1.2270 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.281 -r1.282 src/distrib/sets/lists/debug/mi
cvs rdiff -u -r1.810 -r1.811 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.91 -r1.92 src/lib/libpthread/Makefile
cvs rdiff -u -r0 -r1.1 src/lib/libpthread/call_once.3 \
    src/lib/libpthread/call_once.c src/lib/libpthread/cnd.3 \
    src/lib/libpthread/cnd.c src/lib/libpthread/mtx.3 \
    src/lib/libpthread/mtx.c src/lib/libpthread/thrd.3 \
    src/lib/libpthread/thrd.c src/lib/libpthread/threads.3 \
    src/lib/libpthread/threads.h src/lib/libpthread/tss.3 \
    src/lib/libpthread/tss.c
cvs rdiff -u -r1.13 -r1.14 src/tests/lib/libpthread/Makefile
cvs rdiff -u -r0 -r1.1 src/tests/lib/libpthread/t_call_once.c \
    src/tests/lib/libpthread/t_cnd.c src/tests/lib/libpthread/t_mtx.c \
    src/tests/lib/libpthread/t_thrd.c src/tests/lib/libpthread/t_tss.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index