Google OR-Tools
v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
glpk_env_deleter.cc
Go to the documentation of this file.
1
// Copyright 2010-2024 Google LLC
2
// Licensed under the Apache License, Version 2.0 (the "License");
3
// you may not use this file except in compliance with the License.
4
// You may obtain a copy of the License at
5
//
6
// http://www.apache.org/licenses/LICENSE-2.0
7
//
8
// Unless required by applicable law or agreed to in writing, software
9
// distributed under the License is distributed on an "AS IS" BASIS,
10
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
// See the License for the specific language governing permissions and
12
// limitations under the License.
13
14
#include "
ortools/glpk/glpk_env_deleter.h
"
15
16
#include "
ortools/base/logging.h
"
17
18
extern
"C"
{
19
#include <glpk.h>
20
}
21
22
namespace
operations_research
{
23
namespace
{
24
25
// Calls glp_free_env() in its destructor.
26
struct
GlpkEnvDeleter {
27
~GlpkEnvDeleter() {
28
VLOG(1) <<
"calling glp_free_env() for this thread"
;
29
glp_free_env();
30
}
31
};
32
33
}
// namespace
34
35
void
SetupGlpkEnvAutomaticDeletion
() {
36
// The GlpkEnvDeleter will be created at most once per thread where the
37
// function is called and its destructor will be called at the exit of this
38
// thread.
39
thread_local
GlpkEnvDeleter env_deleter;
40
}
41
42
}
// namespace operations_research
logging.h
glpk_env_deleter.h
operations_research
In SWIG mode, we don't want anything besides these top-level includes.
Definition
binary_indexed_tree.h:21
operations_research::SetupGlpkEnvAutomaticDeletion
void SetupGlpkEnvAutomaticDeletion()
Definition
glpk_env_deleter.cc:35
ortools
glpk
glpk_env_deleter.cc
Generated by
1.12.0