Releases: HexaEngine/Hexa.NET.Utilities.Native
Releases · HexaEngine/Hexa.NET.Utilities.Native
0.1.0.0 Initial Release
Changelog
All notable changes to this project will be documented in this file.
[Unreleased]
Planned additions:
- Additional synchronization primitives
- More utility types
[0.1.0.0] - Initial Release
Added
ReaderWriterLock— lock-free reader-writer lock built on C++20 atomics- Multiple concurrent readers with exclusive writer access
- Writer fairness: writers are not starved by incoming readers
ReaderWriterLock_Init— initializes the lockReaderWriterLock_LockRead/ReaderWriterLock_UnlockRead— blocking read acquisitionReaderWriterLock_TryLockRead— non-blocking read acquisitionReaderWriterLock_LockWrite/ReaderWriterLock_UnlockWrite— blocking write acquisitionReaderWriterLock_TryLockWrite— non-blocking write acquisition with optional writer-fairness preservation
- C-compatible API (
HEXA_UTILS_API) for P/Invoke interop from Hexa.NET.Utilities - CMake build system with shared/static library support (
BUILD_SHARED_LIBS) - Cross-platform export macros supporting Windows (
__declspec), GCC, and Clang