Split asynchronous writing logic out from AsyncFileWriter
Summary: This diff splits `AsyncFileWriter` into two parts: `AsyncLogWriter` and `AsyncFileWriter`, so we could re-use the asynchronous IO operating logic with other types of log writer. See the following diffs for example use case. `AsyncLogWriter` is a virtual class that provides the asynchronous logic and manages a queue of incoming log messages. The users can write subclasses with this class to provided their own IO implementation by overriding the virtual method `performIO`. `AsyncFileWriter` is one implementation of the `AsyncLogWriter` that writes incoming log messages to a file. Most of this diff is simply moving things around. Substantial changes are placed in next diff. Reviewed By: chadaustin Differential Revision: D15228054 fbshipit-source-id: 86c3405755099c59aa2df8a310250fded648e413
Showing
Please register or sign in to comment