マルチスレッドで動作するログ監視ツールの作成を考えています。
監視インスタンスがひとつの場合の全体像として

[.NET Form]<->[C++/CLI wrapper]<->[監視インスタンス+バッファ]<->[ログファイル]

のようになっており、監視インスタンスが最大で16個となる見込みです。
監視インスタンスの動作として
(1)ログファイル1つを定期的にリードしてバッファに結果を書き込む
(2).NETのFormで指定された処理を実行して結果をFormに返す
のように考えています。
(1)の処理は(2)とは別のスレッドで、常に実行されることを期待しています。

このようなツールにおいて
・各監視インスタンスに1つの専用バッファをもたせる
・専用バッファのスレッドセーフを保証する
これらをどのように実装すればよいか教えていただきたいと思います。

環境は下記のとおりです。
Visual C++ 2015
.NET v4.5.2

よろしくお願いします。