Распараллельте, к которому ранее соединили или отсоединился, соединен или отсоединен снова
Этот дефект происходит когда:
Вы пытаетесь соединить поток, к которому ранее соединили или отсоединили.
Вы пытаетесь отсоединить поток, к которому ранее соединили или отсоединили.
Панель Result Details описывает, соединили ли к потоку ранее или отсоединили и также показывает предыдущие связанные события.
Например, поток, к которому соединяют с thrd_join затем отсоединяется с thrd_detach:
thrd_t id; ... thrd_join(id, NULL); thrd_detach(id);
Обратите внимание на то, что поток рассматривается, как соединено, только если присоединение предыдущего сообщения успешно. Например, поток не рассматривается, как присоединяется if перейдите здесь:
thrd_t t;
...
if (thrd_success != thrd_join(t, 0)) {
/* Thread not considered joined */
}thrd_current() функция.Стандарт C11 (пункты 7.26.5.3 и 7.26.5.6) утверждает, что к потоку нельзя соединить или отсоединить, если к этому ранее соединили или отсоединили. Нарушение этих пунктов стандарта приводит к неопределенному поведению.
Постарайтесь не соединять поток, к которому уже соединили или отсоединился ранее. Постарайтесь не отсоединять поток, к которому уже соединили или отсоединили.
| Группа: параллелизм |
| Язык: C |
| Значение по умолчанию: 'off' |
Синтаксис командной строки:
DOUBLE_JOIN_OR_DETACH |
| Удар: носитель |