View RandomSamplingAdapter.cpp
#include <vector>
#include <boost/range.hpp>
using namespace std;
namespace RangeAdapter {
namespace Detail {
template<class Range>
struct RandomSampledRange;
// Range
View StaticTest.asm
; Function compile flags: /Ogtpy
; File c:\data\test\statictest.cpp
; COMDAT ?StaticTest@@YAHXZ
_TEXT SEGMENT
?StaticTest@@YAHXZ PROC ; StaticTest, COMDAT
; 6 : static int s = std::rand();
mov eax, DWORD PTR ?$S1@?1??StaticTest@@YAHXZ@4IA
test al, 1
View Log4netLazyMinimalLock.cs
/*
log4netのLockingModel<lockingModel type="Diagnostics.Log4netLazyMinimalLock" /> とか。
特徴はこんな感じ。
- 別スレッドで遅延書き込み
- ファイルへの排他はMinimalLockと同じように書き込む時のみ
- Mutexによる排他も行うので複数プロセスから同じファイルに書き込めるかも?
- エラー時はリトライ
- 空ファイルを作成しない
- UTF-8BOMだけの書き込みを行わない
View unlock_guard.h
#pragma once
#include <boost/noncopyable.hpp>
namespace {
/// 一時的にロックを解除するためのクラス
template<class Mutex>
class unlock_guard : private boost::noncopyable {
Mutex& m;
public:
typedef Mutex mutex_type;
/// unlock()