2133498_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2133498_ja-JP

2133498_ja-JP

MQX 4.2 closesocket() では、プリエンプションが再度有効化されない可能性があります

sock_close.c/closesocket() では、ストリーミング ソケットが突然閉じられると、_task_start_preemption() が呼び出されない場合があります。ただし、呼び出される必要があります。これは、_task_start_preemption() の呼び出しが発生するまで、呼び出しThreadのプリエンプションが無効になることを意味します。

int32_t クローズソケット(uint32_t ソック)
{

...

そうでない場合、

if(((uint32_t)socket_ptr->PROTOCOL) == SOCK_STREAM)
{
構造体 tcb_parm パラメータ;

if(NULL == socket_ptr->TCB_PTR)
{
_task_start_preemption(); //***この呼び出しをここに追加***
出口へ行きます;
}

...

}

...

}

Re: MQX 4.2 closesocket(), preemption might not be re-enabled

フィードバックをありがとうございます。MQX チームに転送します。


よろしくお願いします。

ダニエル

标记 (1)
无评分
版本历史
最后更新:
‎11-21-2025 06:42 PM
更新人: