1 | #define VALGRIND
|
---|
2 |
|
---|
3 | #include <boost/pool/pool.hpp>
|
---|
4 |
|
---|
5 | int main(int, char**) {
|
---|
6 | boost::pool<> p(1);
|
---|
7 | volatile char* c = (char*)p.malloc();
|
---|
8 | (void)(*c);
|
---|
9 | p.free((void*)c);
|
---|
10 | (void)(*c);
|
---|
11 | c = (char*)p.ordered_malloc();
|
---|
12 | (void)(*c);
|
---|
13 | p.ordered_free((void*)c);
|
---|
14 | (void)(*c);
|
---|
15 | c = (char*)p.ordered_malloc(3);
|
---|
16 | (void)(c[0]);
|
---|
17 | (void)(c[1]);
|
---|
18 | (void)(c[2]);
|
---|
19 | p.ordered_free((void*)c, 3);
|
---|
20 | (void)(c[0]);
|
---|
21 | (void)(c[1]);
|
---|
22 | (void)(c[2]);
|
---|
23 | c = (char*)p.ordered_malloc(2);
|
---|
24 | p.purge_memory();
|
---|
25 | (void)(c[0]);
|
---|
26 | return 0;
|
---|
27 | }
|
---|