Comments (8)
Is the pool shared between threads? Because if so, you need to ensure that there are no race conditions, it isn't thread safe by default.
from memory.
no, I checked that deleter(const_cast<A*>(this));
is always in the same thread, which is true.
so its deleted in the same thread I own the pool. (sounds right?)
from memory.
Have you tried address sanitizer and/or thread sanitizer? Could you post your code so we could try to reproduce it in our environment?
from memory.
Of course:
The test code is here:
Here with the CefRefPtr (which crashes when used in the CEF IO Thread)
but not in the manual test
https://github.com/gabyx/ExecutionGraph/blob/devGUI/gui/tests/src/main_MemoryPool.cpp
and the standalone manual test without CEF and anything, which works :-)
https://github.com/gabyx/ExecutionGraph/blob/devGUI/tests/src/main_MemoryPool.cpp
from memory.
I probably should try a thread sanitizer, but I am not really experienced with this kind of sanitizer...
from memory.
@CapSel : Would be glad to get a feed back from you, thanks for the effort
from memory.
Ok it crashes at memcpy ?? @foonathan
Could you enlighten what it is doing here?
from memory.
Ok, case closed, of course it was my fault: I built the library in debug mode. and saw, I made a typo , and placement new placed a wrong size, not according to the pool setup. ups my bad!
thanks for your efforts!
from memory.
Related Issues (20)
- Strange exception from unordered_set with memory_stack, on MSVC HOT 9
- Library triggers bug in MSVC++ v19 (VS 2022) under modern C++ standards, preventing compilation HOT 2
- `memory_pool_collection` carves too little memory from block if there are many buckets HOT 4
- [docs/examples] associative containers HOT 4
- memory_block_stack::owns() seems wrong? HOT 1
- Time for a new release? HOT 1
- problem with std::is_abstract for unique_ptr with allocator inside struct definition HOT 1
- give allocator_polymorphic_deleter a default constructor HOT 1
- Thread safety
- Build issues on MacOS while building tools with static flag HOT 3
- MinGW build fails due to "#warning" HOT 1
- Can a vector use a memory pool with a small_node_pool ?
- Unable to determine node size of C++ container HOT 4
- ARM64 crash when using static block allocator with small types HOT 2
- memory_pool_collection fails to allocate memory HOT 4
- Test fails on Android arm64-v8a
- memory pool allocate
- Wrap a memory_pool in a thread_safe_allocator? HOT 1
- Calling pure virtual function. HOT 1
- Page (4KiB) alignment for memory pool
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from memory.