Turf is a configurable C++ platform adapter. It defines a common API for:
* Thread creation
* Thread affinities
* Thread IDs
* Atomic operations
* Mutexes
* Condition variables
* Read-write locks
* Semaphores
* Events
* Timers
* Virtual memory
* Heap allocators
* Asserts
It then implements those things using POSIX, Win32, Mach, Linux, Boost, C++11 and possibly other platform APIs. You configure Turf to use the API you want.
Turf is used by [Junction](https://github.com/preshing/junction), a library of concurrent data structures in C++.
## License
Turf uses the Simplified BSD License. You can use the source code freely in any project, including commercial applications, as long as you give credit by publishing the contents of the `LICENSE` file in your documentation somewhere.
## Why Not Use C++11?
Junction was originally developed in C++11, but quickly ran into various limitations. Turf was written to address those limitations.
* Turf exposes affinities, integer thread IDs, semaphores and a few other things that C++11 does not.
* Turf is configurable, so you can compare implementations and even provide your own. The standard C++11 library is not configurable.
* Turf atomics have more flexible initialization, copy and cast rules than C++11 atomics.
* Turf can be used by developers who don't have access to a C++11 compiler.
## Adding Turf to Your Project
For now, refer to Junction's [README](https://github.com/preshing/junction) file for instructions.
## Feedback
If you have any comments or feedback, feel free to [open an issue](https://github.com/preshing/junction/issues) on GitHub, or send a direct message using the [contact form](http://preshing.com/contact/) on my blog.
没有合适的资源?快使用搜索试试~ 我知道了~
Configurable C++ platform adapter.zip
共129个文件
h:81个
cpp:20个
in:11个
需积分: 5 0 下载量 44 浏览量
2023-12-31
11:12:23
上传
评论
收藏 153KB ZIP 举报
温馨提示
Configurable C++ platform adapter
资源推荐
资源详情
资源评论
收起资源包目录
Configurable C++ platform adapter.zip (129个子文件)
atomic_gcc_arm.c 13KB
.clang-format 255B
Macros.cmake 5KB
AddSample.cmake 1KB
iOS.cmake 914B
Heap_DL.cpp 110KB
Affinity_FreeBSD.cpp 7KB
Options.cpp 6KB
RecursiveMutexTester.cpp 4KB
Trace_MemLog.cpp 3KB
Affinity_Win32.cpp 3KB
TLSPtrTester.cpp 3KB
RWLockTester.cpp 3KB
SimpleRWLockTester.cpp 2KB
Affinity_Linux.cpp 2KB
SynchroTests.cpp 2KB
Heap.cpp 2KB
RandomTest.cpp 2KB
MutexTester.cpp 2KB
Trace_Counters.cpp 2KB
UTCTime.cpp 1KB
Random.cpp 1KB
TimeWaster.cpp 1KB
Core.cpp 787B
Trace_Null.cpp 647B
.gitignore 37B
atomic.h 23KB
atomic_gcc_x86-64.h 19KB
atomic_gcc_arm.h 19KB
atomic_msvc.h 12KB
Atomic_Native.h 7KB
JobDispatcher.h 7KB
Heap_DL.h 6KB
BitField.h 5KB
Trace_MemLog.h 4KB
platform_detect.h 4KB
Atomic_Boost.h 4KB
Atomic_CPP11.h 4KB
core.h 3KB
Util.h 3KB
Affinity_Linux.h 3KB
Affinity_Mach.h 3KB
Mutex_LazyInit.h 2KB
CPUTimer_GCC.h 2KB
Core.h 2KB
Atomic.h 2KB
RWLock.h 2KB
ConditionVariable_POSIX.h 2KB
Mutex.h 2KB
Trace_Counters.h 2KB
CPUTimer_Win32.h 2KB
TLSPtr_Win32.h 2KB
CPUTimer_Mach.h 2KB
Thread_POSIX.h 2KB
TLSPtr_POSIX.h 2KB
CPUTimer_CPP11.h 2KB
TID_POSIX.h 2KB
Options.h 2KB
Affinity.h 2KB
MemPage_Win32.h 2KB
ConditionVariable.h 2KB
CPUTimer_POSIX.h 2KB
CPUTimer.h 2KB
Thread_Win32.h 2KB
TID_Win32.h 2KB
Semaphore.h 2KB
Thread.h 2KB
compiler_gcc.h 2KB
TID.h 2KB
Affinity_Win32.h 1KB
Thread_Boost.h 1KB
TLSPtr.h 1KB
Thread_CPP11.h 1KB
Mutex_POSIX.h 1KB
Semaphore_POSIX.h 1KB
compiler_msvc.h 1KB
SpinKicker.h 1KB
RaceDetector.h 1KB
UniqueSequence.h 1KB
Affinity_FreeBSD.h 1KB
ManualResetEvent_CondVar.h 1KB
ConditionVariable_Win32.h 1KB
TLSPtr_Boost.h 1KB
ManualResetEvent.h 1KB
MemPage.h 1KB
Mutex_Boost.h 1KB
Mutex_CPP11.h 1KB
ConditionVariable_CPP11.h 1KB
MemPage_POSIX.h 1KB
Mutex_SpinLock.h 1KB
RWLock_POSIX.h 1KB
RWLock_Win32.h 1KB
Random.h 1KB
ManualResetEvent_Win32.h 1KB
Affinity_Null.h 1KB
Semaphore_Mach.h 1KB
Heap.h 1KB
Mutex_Win32.h 1KB
RWLock_CPP14.h 1KB
Heap_CRT.h 1KB
共 129 条
- 1
- 2
资源评论
暮苍梧~
- 粉丝: 41
- 资源: 258
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- IMG_0694.GIF
- 基于图像的三维模型重建C++源代码+文档说明(高分课程设计)
- 基于聚焦法的工件立体测量方案,根据数据进行三维重建 使用HALCON处理图像,MATLAB拟合数据+源代码+数据集+效果图
- 锄战三国村 修改:货币使用不减 v1.10(2) 原创 (中文).apk
- 基于python实现的单目双目视觉三维重建+源代码+图像图片(高分课程设计)
- 基于C+++OPENCV的全景图像拼接源码(课程设计)
- 基于Python+OpenCV对多张图片进行全景图像拼接,消除鬼影,消除裂缝+源代码+文档说明+界面截图(高分课程设计)
- 基于C++实现的全景图像拼接源码(课程设计)
- 基于SIFT特征点提取和RASIC算法实现全景图像拼接python源码+文档说明+界面截图+详细注释(95分以上课程大作业)
- 基于matlab实现眼部判别的疲劳检测系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功