Вопросы по теме 'pthread-join'
Ошибки статистики в pthread (S_ISDIR не работает)
В настоящее время я пытаюсь написать программу, которая находит размер дерева каталогов, а также размер всех подкаталогов в нем, создавая поток для каждого нового подкаталога и используя этот поток для определения размера подкаталога. Это довольно...
355 просмотров
schedule
11.01.2023
Концепция многопоточности в Java и метод join()
Я запутался в методе join() , используемом в потоках в Java. В следующем коде:
// Using join() to wait for threads to finish.
class NewThread implements Runnable {
String name; // name of thread
Thread t;
NewThread(String...
116230 просмотров
schedule
01.04.2024
Как получить код ошибки из pthread_join()?
В следующем коде не удается присоединиться к pthreads, и выводится сообщение об ошибке присоединения. Как получить дополнительную информацию о сбое и его причине?
pthread_t aThread[MAX_LENGTH];
int errCode[MAX_LENGTH];
char returnVal;...
7695 просмотров
schedule
22.06.2023
Как узнать, является ли поток присоединяемым потоком?
Я новичок в многопоточности, и мне нужно знать, когда именно мне нужно присоединиться к моему потоку, чтобы не отсоединять его. какие факторы мне нужно принять во внимание, чтобы знать, что поток «должен присоединиться»?
405 просмотров
schedule
15.03.2023
pthread_join не влияет на основной поток
Я нашел этот учебник по сокетам http://www.binarytides.com/socket-programming-c-linux-tutorial/ и у меня возникли проблемы с последним примером. Это многопоточный сервер, использующий сокеты и pthreads.
Код компилируется нормально, но работает...
485 просмотров
schedule
27.01.2023
Алгоритм Петерсона для предотвращения состояния гонки между потоками
Подробности:
Я реализую алгоритм Петерсона (ниже), чтобы избежать состояния гонки. Я хочу сделать это так: объявить глобальную целочисленную переменную и создать потоки один и два. Всякий раз, когда поток имеет доступ к глобальной переменной, он...
2429 просмотров
schedule
21.07.2022
создавать Pthreads в цикле
Я создаю несколько потоков в цикле for и после этого цикла присоединяю их к другому циклу. они выполняют свою функцию, пока все не закончат ее, не так ли? мой последний результат логически неверен. мой результат правильный, просто когда...
8198 просмотров
schedule
15.08.2023
Почему нельзя выполнять несколько pthread_join в одном потоке?
Из https://computing.llnl.gov/tutorials/pthreads/ :
Присоединяющийся поток может соответствовать одному вызову pthread_join(). Логической ошибкой является попытка нескольких объединений в одном и том же потоке.
Также из "man...
1650 просмотров
schedule
11.10.2022
Вызвать присоединение к дочернему потоку в основной функции
У меня есть тестовый код:
#include <stdio.h>
#include <unistd.h>
#include <pthread.h>
pthread_t th_worker, th_worker2;
void * worker2(void *data) {
for(int i = 0; i< 1000000; i++){
printf("thread for...
197 просмотров
schedule
12.05.2023
pthread_join всегда вызывает SIGSEGV
По какой-то причине pthread_join всегда вызывает действие SIGSEGV на моем компьютере, когда я запускаю Valgrind. Чтобы проверить это, я запустил следующий код с сайта https://computing.llnl.gov/tutorials/pthreads/. :
/* pthread.c */...
695 просмотров
schedule
21.01.2023
Что, если поток завершится раньше, чем другой поток его дождется (присоединится)?
Например, если я создам 3 потока и присоединяюсь к ним в том же порядке. Если второй поток выйдет первым, что произойдет с pthread_join. Будет ли программа блокироваться до тех пор, пока tid1 не выйдет или не вернется напрямую из pthread_join (&...
712 просмотров
schedule
29.10.2023
Порядок изменения в pthread_join вернет ошибку сегментации в Linux
Можете ли вы объяснить, почему в Linux (не в Mac) я получаю ошибку сегментации, когда делаю:
pthread_join(thread2, (void**)&status);
pthread_join(thread1, (void**)&status);
Но это нормально, когда я делаю:
pthread_join(thread1,...
177 просмотров
schedule
15.01.2023
Параллельное программирование с использованием Pthreads
Я новичок в области параллельного программирования, поэтому решил поиграться с подпрограммой pthread_join(). Я придумал следующий код для вычисления a*X + Y, где a — скаляр, а X, Y — векторы некоторого размера.
Вот что я написал:
#include...
901 просмотров
schedule
14.01.2023
C++: передача threadID для функции аномалии
Я реализовал параллельную очередь с двумя методами: добавить (поставить в очередь) и удалить (удалить из очереди).
Чтобы протестировать свою реализацию с использованием двух потоков, я сгенерировал 10 (NUMBER_OF_OPERATIONS) случайных чисел от 0...
265 просмотров
schedule
06.12.2022
Pthread_join Printf
У меня есть эта проблема, которую я изучаю, но я не понимаю одну часть. Сценарий не на английском языке, поэтому перевод будет довольно утомительным, но основная проблема заключается в том, чтобы заставить поток прочитать определенный текстовый файл...
203 просмотров
schedule
17.11.2023
Почему поток просто умирает, если я не устанавливаю 'pthread_join'
#include <stdio.h>
#include <pthread.h>
#include <unistd.h>
int count = 0;
pthread_mutex_t MUTEX = PTHREAD_MUTEX_INITIALIZER;
void* func1(void* a){
pthread_mutex_lock(&MUTEX);
for(;count < 4;count++){...
51 просмотров
schedule
09.12.2022
pthreads распараллеливание неверный результат
Я пишу C-программу, используя pthreads. Цель состоит в том, чтобы вычислить кратность заданных чисел, передав их в качестве аргументов. Числа для умножения и количество множителей можно свободно выбирать.
Программа компилируется с gcc -lpthread...
60 просмотров
schedule
23.04.2023