diff options
author | Michał Łyszczek <michal.lyszczek@bofc.pl> | 2018-05-06 12:54:47 +0200 |
---|---|---|
committer | Michał Łyszczek <michal.lyszczek@bofc.pl> | 2018-05-06 12:54:51 +0200 |
commit | 64efa3fd8c29fb8a572740ba010f5b51d013c8a0 (patch) | |
tree | 681303a74259a52b52ca172f42822e2bd646d62f /man/el_init.3 | |
parent | 139b36f884098cced07bd045e429b734dff0bef4 (diff) | |
download | embedlog-64efa3fd8c29fb8a572740ba010f5b51d013c8a0.tar.gz embedlog-64efa3fd8c29fb8a572740ba010f5b51d013c8a0.tar.bz2 embedlog-64efa3fd8c29fb8a572740ba010f5b51d013c8a0.zip |
last time minor fixes
no_buildbot
Diffstat (limited to 'man/el_init.3')
-rw-r--r-- | man/el_init.3 | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/man/el_init.3 b/man/el_init.3 index 7c81289..39fcee3 100644 --- a/man/el_init.3 +++ b/man/el_init.3 @@ -1,4 +1,4 @@ -.TH "el_init" "3" " 3 May 2018 (v0.3.0)" "bofc.pl" +.TH "el_init" "3" " 6 May 2018 (v0.3.0)" "bofc.pl" .SH NAME .PP .B el_init @@ -17,17 +17,32 @@ There are two types of functions in Functions that use global static structure inside library, these functions don't accept .I options -argument, and are not thread-safe. +argument. .PP Another type are functions that accept .I options argument. These functions are prefixed with .BR el_o . -Options functions are thread-safe provided that threads are working on different -.I options -objects and +.PP +All functions (options or not) are "line" thread-safe (provided that .B \-\-enable\-reentrant -is turned on. +is turned on). +That means library buffers whole line before it calls +.B puts +function, so lines in output will not overlap. +.PP +NOTE: this may not be entirely true for every operating system there is! Yes, +.B embedlog +will always buffer and print whole lines, but OS may, for example interrupt +.B puts +call from thread1, and call +.B puts +from thread2. +In such case output will be mangled with 2 different lines. +While this situation is very rare, it's only fair to mention it. +If in doubt, check +.B stdio +implementation in your operating system. .PP .BR el_init (3) initializes static global option structure. This option structure is used by all |