This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 编译器/MSP432E401Y:如何将互斥量与20.2.3编译器配合使用

Guru**** 2952510 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/960211/compiler-msp432e401y-how-to-use-mutex-with-20-2-3-compiler

器件型号:MSP432E401Y

工具/软件:TI C/C++编译器

您好!

在我的 C++项目中、我有一个中央事件循环(无 RTOS)、该循环具有一个 deque 作为事件的 FIFO。 我需要在添加和删除事件对象的同时锁定该去格。 我包括在内 该文件包含的内容 <__mutex_base>在这里定义了互斥类、但当我编译时、我得到错误消息 错误#20:标识符"mutex"未定义。  

但即使不会发生这种情况、也没有 要包含的文件。 如何使用提供的库保护该设计?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    查看 ti-cgt-arm_20.2.3.sps/lib/src/libcxx/_config_site  _LIBCPP_HAS_NO_threads 已定义、根据 Compiler/66AK2H12:在编译器8.3.1版中使用 c++11线程和同步原语 意味着互斥不支持 TI ARM 编译器运行时间库。

    C++14对 ARM 和 MSP 编译器的支持 还注意到目前不支持并发。

    [引用 USER="Jonathan Morr1]*如何使用提供的库来保护请求?[/quot]由于您的 C++项目没有 RTOS、是否只是通过禁用中断来保护主线程和中断处理程序对 FIFO 的访问?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    啊、我打开了这个 wiki 页面一次、但无法再找到它。  

    我不会禁用中断、因为我会丢失触发中断的事件、但会使用"备份列表"、以便仍处理 N 个并发中断。

    感谢您的深入见解。