Описание тега reentrant

Повторно входящая функция - это функция, которую можно вызывать несколько раз, независимо от того, находится ли функция в стеке (все еще работает), при этом получая согласованные и ожидаемые результаты.
2 ответа

Segfault на srandom_r

Я в своем уме. Этот тривиальный код дает мне Segfault, что может быть не так?? struct random_data *qq; qq = calloc(50, sizeof(struct random_data)); srandom_r(time(NULL), qq); Теперь, если я изменю это так, это работает: struct random_data qq; srando…
02 сен '13 в 09:13
2 ответа

Это ставит реентерабельные?

Является int puts(const char*); Реентрантная? Могу ли я безопасно поместить его в обработчик сигнала?
09 май '11 в 09:39
1 ответ

Потокобезопасный, реентерабельный, асинхронно-сигнальный сейф

Я заранее прошу прощения за то, что будет немного дамп кода, я обрезал как можно больше неважного кода: // Global vars / mutex stuff extern char **environ; pthread_mutex_t env_mutex = PTHREAD_MUTEX_INITIALIZER; int putenv_r(char *string) { int len; …
21 дек '16 в 07:56
1 ответ

QPixmap реентерабелен?

У меня есть программа, которая должна загрузить много QPixmaps. Я разделил загрузку растровых изображений на несколько заданий, используя QtConcurrent::mappedReduced (Я на самом деле загружаю кучу QGraphicPixmapItemс). Функция загрузки вызывает толь…
23 мар '15 в 15:48
1 ответ

Подсказка написать реентерабельную функцию суммы

Я должен написать нормальную функцию суммы и реентерабельную в C. Я должен передать int, и она должна быть добавлена ​​в INIT_VALUE. В реентерабельной функции основной проход int* для сохранения состояния. Как я могу инициализировать этот указатель …
11 мар '16 в 13:17
1 ответ

Передача вызова функции в качестве параметра для printf & Reentrancy

Насколько мне известно, printf() является потокобезопасным и не реентерабельным. Теперь, если я передам результат вызова функции в качестве параметра, подобного этому: printf("\"%d\" squared is \"%d\".\n", 5, squareOfInteger(5)); будет функция squar…
31 май '17 в 05:58
2 ответа

Как я могу сделать так, чтобы моя функция факториала возвращалась?

Я должен написать реентерабельную факториальную функцию, когда я искал, что такое реентерабельная функция, я обнаружил много определений, например, реентерабельная функция не должна использовать статическую или глобальную переменную, и функция не мо…
13 май '18 в 16:41
1 ответ

Требуется ли ключевое слово volatile для полей, доступных через ReentrantLock?

Мой вопрос касается того, гарантирует ли использование ReentrantLock видимость поля в том же отношении, что и ключевое слово synchronized. Например, в следующем классе A поле sharedData не нужно объявлять volatile, поскольку используется синхронизир…
15 окт '09 в 06:18
1 ответ

Повторно входящие функции и как это выглядит?

Я на самом деле не понимаю повторно входящий код. Может кто-нибудь показать мне алгоритм для повторного ввода кода, чтобы я мог посмотреть на него? Было бы неплохо объяснить, как это работает. Благодарю.
14 июн '14 в 00:35
1 ответ

Функция реентранта Objective-C

Я довольно новичок в Objective C и столкнулся со следующей проблемой: -(void) funcA { // array is NSMutableArray within class definition and initialised at alloc method [array setLength:0]; ... // make search and delegate itself for callback to func…
05 апр '12 в 17:34
1 ответ

Функция с постоянной и статической локальной переменной, делает функцию реентерабельной?

У меня есть функция с локальной переменной, которая является статической и постоянной, функция реентерабельна? Это код: void foo(unsigned char *pucBuffer, int iBytes, unsigned int *puiOUT) { static const long rg_uliLUT[4] = {0x00000000, 0x77073096, …
06 авг '13 в 09:37
1 ответ

Потокобезопасный против асинхронного безопасного сигнала

В разделе APUP 12.5 упоминается, что: "Если функция реентерабельна по отношению к нескольким потокам, мы говорим, что она поточнобезопасна. Однако это не говорит нам, является ли функция реентерабельной по отношению к обработчикам сигналов". Я был о…
01 мар '12 в 08:20
1 ответ

DllMain DLL_PROCESS_DETACH и вход функции GetMessage

Я написал глобальный хук, который перехватывает с помощью SetWindowsHookEx WH_GETMESSAGE, WH_CALLWNDPROC и WH_CALLWNDPROCRET.Хук dll создает новый поток в перехваченном процессе, который, среди прочего, проверяет состояние звука процесса и вызывает …
4 ответа

Входящий замок и тупик с Java

Может кто-нибудь объяснить мне, как Reentrant lock а также deadlock связаны друг с другом примером кода Java (псевдо)?
24 июн '11 в 16:33
2 ответа

Безопасность потоков в коде на стороне сервера

Я новичок в кодировании на стороне сервера и JSP/ сервлетов. У меня есть код, который имеет 3 класса. 1-й класс Serv, унаследованный от Java httpservlet. В этом я реализовал метод doPost(). В doPost() я использую объект 2-го класса ResourceClass. Re…
03 май '12 в 07:34
5 ответов

GCC и реентерабельный код

Генерирует ли GCC реентерабельный код для всех сценариев?
13 июн '10 в 06:29
1 ответ

Ошибки в создании повторного парсера

Я много пробовал, но не смог разобраться в чем ошибки. Любое подробное объяснение об этом будет очень полезно. Так что, в основном, я пытаюсь написать повторный входящий парсер, и это мои файлы. Lex1.ll %{ #include "Globals.h" #include "yac1.tab.hh"…
26 авг '13 в 15:18
1 ответ

Выдвигает ли переменная в массив потокобезопасную операцию?

У меня есть следующий код Perl: push(@myArray, $myValue); Является ли операция атомарной или мне нужно будет использовать блокировки, если несколько потоков будут выполнять одну и ту же операцию во многих потоках?
22 июл '10 в 02:47
1 ответ

Повторное поступление кода путаница

Я пытаюсь точно понять, что означает код повторного входа. У меня есть этот код: void HWt::startElement(uint8_t HW, uint8_t val) { writeBitsToregister(REG_VAL + HW*131072, 0, 3, val); //Write bits 0-2 writeBitToregister(REG_VAL, 3, 1); //Set bit 3 t…
04 дек '14 в 07:50
3 ответа

Дизайн реентерабельной библиотеки на С

Допустим, я создаю библиотеку, которая будет генерировать quuxes в C. Quuxes нужно две переменные состояния для успешного появления: static int quux_state; static char* quux_address; /* function to spork quuxes found in a file, reads a line from the…
13 июл '10 в 13:25