26 lines
528 B
C++
26 lines
528 B
C++
/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms
|
|
* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */
|
|
|
|
#pragma once
|
|
|
|
#include "StdAfx.h"
|
|
|
|
class TWSAPIDLLEXP EMutex
|
|
{
|
|
#if defined(IB_POSIX)
|
|
pthread_mutex_t cs;
|
|
#elif defined(IB_WIN32)
|
|
CRITICAL_SECTION cs;
|
|
#else
|
|
# error "Not implemented on this platform"
|
|
#endif
|
|
|
|
public:
|
|
EMutex();
|
|
~EMutex();
|
|
bool TryEnter();
|
|
void Enter();
|
|
void Leave();
|
|
};
|
|
|