Вопросы по теме 'pthreads'
Как присоединиться к ветке, которая висит на блокировке ввода-вывода?
У меня есть поток, работающий в фоновом режиме, который считывает события с устройства ввода в режиме блокировки, теперь, когда я выхожу из приложения, я хочу правильно очистить поток, но я не могу просто запустить pthread_join (), потому что поток...
18456 просмотров
schedule
08.05.2024
C: как работает pthread dataspecific?
Я не уверен в том, как работает pthread dataspecific: учитывая следующий код (найденный в Интернете), означает ли это, что я могу создать, например, 5 потоков в основном, иметь вызов func только в некоторых из них (скажем, 2 ) эти потоки будут иметь...
2467 просмотров
schedule
17.03.2023
Как получить SPID в Linux 2.6 с С++
У меня вопрос: есть ли способ получить SPID в Linux 2.6 из приложения C++? Когда я делаю «ps -amT», я вижу потоки в процессе:
[email protected]:~# ps -amT
PID SPID TTY TIME CMD
1120 - pts/1 00:00:20 sncmdd
- 1120 -...
3139 просмотров
schedule
11.11.2023
событие на основе pthread, пробуждающее только ожидающие потоки
В моей программе на C++ у меня есть класс CEvent с функциями-членами триггера и ожидания, основанными на pthreads (работающих в Linux). Реализация вполне очевидна (т.е. много примеров в сети), если есть один ожидающий процесс. Однако теперь мне...
5326 просмотров
schedule
20.11.2022
Как разбудить select() при закрытии сокета?
В настоящее время я использую цикл выбора для управления сокетами в прокси. Одно из требований этого прокси заключается в том, что если прокси отправляет сообщение на внешний сервер и не получает ответа в течение определенного времени, прокси должен...
17692 просмотров
schedule
26.08.2022
Привязать потоки к процессорам
Когда я запускаю свой многопоточный код, система (linux) иногда перемещает потоки с одного процессора на другой. Поскольку у меня столько же потоков, сколько и процессоров, это делает кэши недействительными без уважительных причин и сбивает с толку...
10313 просмотров
schedule
17.02.2024
Как мое многопоточное приложение для создания изображений может передать свои данные графическому интерфейсу?
Медленная реализация генератора Мандельброта с множественной точностью. Многопоточный, с использованием потоков POSIX. ГТК графический интерфейс.
Я немного потерялся. Это моя первая попытка написать многопоточную программу. На самом деле я еще...
288 просмотров
schedule
07.01.2024
Имеют ли pthreads какие-либо преимущества перед GCD?
Недавно изучив Grand Central Dispatch, я обнаружил, что многопоточный код довольно интуитивно понятен (с GCD). Мне нравится тот факт, что никаких блокировок не требуется (и тот факт, что он использует внутренние структуры данных без блокировки) и что...
7096 просмотров
schedule
19.01.2024
Могу ли я заставить pthread.h Unix компилироваться в Windows?
Если я попытаюсь скомпилировать программу с
#include <pthread.h>
в нем я получаю ошибку:
pthread.h: No such file or directory
Можно ли заставить это скомпилировать в среде Windows?
Я использую Vista с последней версией...
149486 просмотров
schedule
28.06.2023
Как вы запрашиваете pthread, чтобы узнать, работает ли он?
В моем деструкторе я хочу чисто уничтожить поток.
Моя цель - дождаться завершения выполнения потока и ЗАТЕМ уничтожить поток.
Единственное, что я нашел о запросе состояния pthread, это pthread_attr_setdetachstate , но это только говорит вам,...
103600 просмотров
schedule
05.11.2022
Как приостановить другой поток (не текущий)?
Я пытаюсь реализовать симуляцию микроконтроллера. Эта симуляция предназначена не для точного представления тактового цикла одного конкретного микроконтроллера, а для проверки общей правильности кода.
Я думал о том, чтобы иметь «основной поток»,...
8234 просмотров
schedule
01.12.2023
Ошибка при открытии файлов темами
Я использую C и pthread на компьютере с Linux, и у меня возникают проблемы с распараллеливанием программы.
В основном я пытаюсь взять папку с файлами данных, разделить их на группы, каждая группа обрабатывается потоком, и запустить функцию для...
243 просмотров
schedule
31.05.2022
Переносимость pthreads-win32 над различными компиляторами Windows
Я использую pthreads-win32, чтобы обеспечить поддержку потоковой передачи для Windows.
У меня есть кроссплатформенный проект, который использует pthreads, и я хочу, чтобы он работал в Windows с различными компиляторами и разными версиями ОС.
По...
5492 просмотров
schedule
12.05.2024
Как правильно обрабатывать сигналы при использовании шаблона рабочего потока?
У меня есть простой сервер, который выглядит примерно так:
void *run_thread(void *arg) {
// Communicate via a blocking socket
}
int main() {
// Initialization happens here...
// Main event loop
while (1) {
new_client =...
572 просмотров
schedule
05.02.2022
Реализация производителей/потребителей с использованием мьютекса
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <pthread.h>
#include <semaphore.h>
#define WORK_SIZE 1024
pthread_mutex_t work_mutex;
char work_area[WORK_SIZE];
void...
12828 просмотров
schedule
22.05.2022
Проблема с потоками: значение хранится в куче
У меня проблема с нитями.
Я определяю глобальную переменную, char *, которую я инициализирую значением NULL, и мьютекс.
pthread_mutex_t mutex;
char *minURLTime;
minURLTime = NULL;
Затем я инициализирую свой мьютекс:...
220 просмотров
schedule
16.12.2022
Pthreads против OpenMP
Я создаю многопоточное приложение на C с использованием Linux.
Я не уверен, следует ли мне использовать API потока POSIX или API OpenMP.
Каковы плюсы и минусы их использования?
Изменить:
Может ли кто-нибудь уточнить, создают ли оба...
52434 просмотров
schedule
21.03.2022
Использование pthread.h в сборке Windows
У меня есть кодовая база, в которой широко используется pthread.h. В проекте Windows Visual Studio это, очевидно, не работает, поскольку pthreads — это утилита Unix.
Я знаю, что существует pthread-win32 или что-то в этом роде, но есть ли способ...
40104 просмотров
schedule
12.03.2022
Ошибка сегментации с pthread_join
Вот функция, которая выдает segfault в pthread_join:
void call_merge()
{
int no_runs = No_sub_seq;
int no_joins=no_runs-1;
int magic1=0,j=0,inc = 1;
int temp_runs = no_runs/2;
int i,k;...
3421 просмотров
schedule
25.03.2023
Ошибки C thread-mutex кодирует?
Вот код:
....
typedef struct {
int buf[10];
long head, tail;
int full, empty;
pthread_mutex_t *mut;
pthread_cond_t *notFull, *notEmpty;
} queue;
int main(){
queue *que;
pthread_t sup, cut;
que = queueInit();
if(que == NULL){...
378 просмотров
schedule
21.09.2022