60616


Spresense の Arduino 環境で、NuttX の task_create
を使って複数スレッドでプログラムを書いていますが、いくつか疑問がありますので質問をさせてください。質問は二点あります。

（１）task_create 関数で指定するプライオリティは値が大きいほうがプライオリティが高いという理解で正しいでしょうか？

（２）Arduino の loop 関数のプライオリティが分かりません。いろいろ試してみたところ 120
位ということまで分かりましたが、正確な値を教えていただけないでしょうか？

以上２点について、ご教示のほど、どうぞよろしくお願いいたします。


CC BY-SA 4.0
2019-10-26T15:22:18.807
59999
2019-11-18T01:50:12.503
2019-10-26T15:27:28.733
27334
27334
question
spresense arduino
Spresense Arduino 環境における task_create 関数のプライオリティ指定について


ソニーのSPRESENSEサポート担当です。

ご質問の件について回答をさせていただきます。

（１）について、ご推察のとおり大きい値が高いプライオリティとなります。  
（２）について、loop関数のプライオリティは"100"となります。

また、プライオリティは1から255までの値を設定することができます。

_プライオリティに関するNuttXの定義(nuttx/include/sys/types.h)_

[code]

    #define SCHED_PRIORITY_MAX     255
    #define SCHED_PRIORITY_DEFAULT 100
    #define SCHED_PRIORITY_MIN       1
    #define SCHED_PRIORITY_IDLE      0
    
[/code]

以上、ご参考になれば幸いです。

今後ともSPRESENSEをどうぞよろしくお願いいたします。  
SPRESENSEサポートチーム


CC BY-SA 4.0
2019-11-18T01:50:12.503
60616
2019-11-18T01:50:12.503
29520
59999
answer