platform_bionic/libc/async_safe
Yifan Hong 5a39cee1ce Make ramdisk_available.
Test: pass
Bug: 147347110
Change-Id: I142311a7558a19d209bcd63207a88e12cf6f130e
2020-01-22 12:09:33 -08:00
..
include/async_safe libasync_safe: stop clobbering other folks' identifiers. 2019-02-14 14:23:13 -08:00
Android.bp Make ramdisk_available. 2020-01-22 12:09:33 -08:00
async_safe_log.cpp Add async_safe_format_fd_va_list 2018-10-08 13:27:16 -07:00
README.md Add a README.md for async_safe 2020-01-17 12:12:26 -08:00

async_safe logging

This library provides an async_safe implementation for formatting and writing log messages to logd.

Note that the liblog implementation connects a single socket to logd and uses a RWLock to manage it among threads, whereas these functions connect to liblog for each log message. While it's beneficial to have this lock-free and therefore async_safe mechanism to write to logd, connecting a socket for each message does not scale well under load. It was also determined to be too costly to connect a socket for each thread as some processes, such as system_server, have over 100 threads. Therefore, we maintain these two separate mechanisms.