线程绑定arm核,绑定后如何解绑定

         问题:在ubuntu TX2平台上,将线程与6个arm核心中的一个绑定,想在运行时下解绑定,采用的方法是:

                    1. 用get接口获取当前线程绑定的mask;

                    2. 判断当前线程是否与某个核心绑定;

                   3. 如果已经绑定,再调用CPU_CLR接口将该核心从mask中移除;  

                   4. 将第三步mask作为参数,调用setj接口重新绑定线程;

                   测试结果,发现线程一旦绑定了该核心,则无法解绑定。 猜测原因是线程在绑定该核心的时候,无其它可调度的cpu,故无法解绑定。

       请问如何解帮?

Parents
No Data
Reply Children
No Data