The Append blob wrapper currently holds a write-lock on its internal buffer while flushing previous contents to the underlying blob, preventing concurrent reads and buffered writes. We should instead hold the lock only for the duration required to prepare the buffer contents for writing (similar to how Append wrapper's sync() works). This way while writes to the underlying blob are happening, further appending of new data to the buffer along with reads of buffered data can take place concurrently.