Use le_thread_SetPriority to set thread's priority

#1

Hi,I have a problem about Thread.I want to create a thread in my legato application。when I use legato interface <le_thread_SetPriority()> to set thread’s priority,I set priority to 0-3, it ran successfully, but when I set priority to 4-35, it ran errors.
run log:
Jan 6 01:46:50 | task_simple[23605]/task_simple_exe T=main | _main.c main() 60 | == Starting Event Processing Loop == Jan 6 01:46:50 | task_simple[23605]/framework T=main | LE_FILENAME SetSchedPolicyAttr() 497 | Set scheduling policy to SCHED_OTHER for thread '1'. Jan 6 01:46:50 | task_simple[23605]/framework T=main | LE_FILENAME SetSchedPolicyAttr() 497 | Set scheduling policy to SCHED_RR for thread '2'. Jan 6 01:46:50 | task_simple[23605]/framework T=main | LE_FILENAME le_thread_Start() 855 | pthread_create() failed with error code 1 (Operation not permitted). Jan 6 01:46:50 | task_simple[23605]/framework T=main | LE_FILENAME le_thread_Start() 859 | Insufficient permissions to create thread '2' with its current attributes.

Priority 0-3: Set scheduling policy to SCHED_OTHER for thread ‘1’.
Priority 4-35:Set scheduling policy to SCHED_RR for thread ‘2’.

Insufficient permissions to create thread ‘2’ with its current attributes.`

How can I get permission?

#2

you need to go to .adef and add " priority: rt1 "
Please see :
https://docs.legato.io/latest/defFilesAdef.html#defFilesAdef_processPriority

#3

Hi
Thank you for your reply.I add "priority: rt32"in .adef
The problem has been solved.Thank you very much!