aboutsummaryrefslogtreecommitdiff
path: root/odb/details/win32/once.cxx
blob: 0125d230db4c5d99a8c3f0be18aef9a2755a9344 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// file      : odb/details/win32/once.cxx
// author    : Boris Kolpackov <boris@codesynthesis.com>
// copyright : Copyright (c) 2009-2010 Code Synthesis Tools CC
// license   : GNU GPL v2; see accompanying LICENSE file

#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif

#include <windows.h>

#include <odb/details/win32/once.hxx>
#include <odb/details/win32/once-init.hxx>

namespace odb
{
  namespace details
  {
    CRITICAL_SECTION once::cs_;

    void
    once_process_start ()
    {
      InitializeCriticalSection (&once::cs_);
    }

    void
    once_process_end (bool)
    {
      DeleteCriticalSection (&once::cs_);
    }
  }
}