cost 307 ms
未定義為異步安全的函數(例如mmap(2))會影響信號處理程序中調用的其他異步安全函數嗎?

[英]Do functions which are not defined as async-safe, such as mmap(2), effect other async-safe functions called in signal handler?

我正在制作一個注入到進程中並重新定義某些功能的庫,例如open(2)在調用真正的open(2)之前執行一些任務。 我的圖書館叫mmap(2)。 由於open(2)是異步安全的,使用該庫的某人是否有可能在信號處理程序中調用open(2),而我的庫中還添加了對mmap(2)的調用,可能會使他對o ...

讀取MP3 IDV2標簽的大小

[英]Reading the MP3 IDV2 tag size

我正在嘗試讀取ID3V2標簽的大小。 我的代碼應該在該結構中存儲第一個標頭,其中包含標識,版本,標志和大小。 代碼從位0讀取到位9並將其存儲在此處 讀取: 然后將tag.size的值傳遞給此函數,該函數使size的位不同步: 但是,synchsafe的返回值永遠不能只 ...

當我從信號處理程序調用非異步安全函數時,它總是不安全嗎?

[英]Is it always unsafe when I call a non-async-safe function from a signal handler?

我只是想知道是否可以在信號處理程序中調用非異步安全函數。 引用Linux手冊頁signal(7): 如果信號中斷了不安全功能的執行,並且處理程序調用了不安全功能,則程序的行為是不確定的 。 和TLPI : SUSv3注意到,表21-1(異步安全功能列表)中未列出的 ...

對向量(vector :: operator []和vector :: size())的只讀訪問是否是異步安全的?

[英]Is read-only access to a vector (vector::operator[] and vector::size()) asynchronous-safe?

我的程序需要對SIGINT的信號處理程序中的vector<string>的內容執行只讀訪問。 (另一種方法是使用固定大小的固定長度C字符串數組。)該程序設計為在POSIX環境中運行。 vector::operator[]和vector::size()異步安全的(還是信號安全的 ...

使用寫入或異步安全函數從信號處理程序打印 int

[英]Print int from signal handler using write or async-safe functions

我想在信號處理程序中使用write (或任何異步安全函數)將數字打印到日志或終端。 我寧願不使用緩沖 I/O。 有沒有一種簡單且推薦的方法來做到這一點? 例如代替printf ,下面我更喜歡write (或任何 asyn 安全函數)。 打印字符串很容易。 代替上面的printf我可以使用(不 ...

如何在多線程應用程序中使用異步信號管理共享的POSIX信號燈

[英]How to manage a shared POSIX semaphore with async signals in a multithreaded application

我必須編寫一個線程安全的庫,該庫使用POSIX信號量(用作初始值= 1的互斥量)進行同步。 我發現了一些問題,無法正確管理異步信號。 我有一個與此靜態庫鏈接的應用程序,並且該應用程序(多線程)調用該庫的函數。 對某些內部結構的訪問由posix信號量控制(它在庫的內部): 如果一個線 ...

sig_atomic_t在Linux信號掩碼功能中的用法

[英]The usage of sig_atomic_t in linux signal mask function

我最近正在學習一本名為《高級Linux編程》的書,並且遇到了這個問題:該書說您應該使用sig_atomic_t變量類型,以確保如果您在信號處理程序函數中設置了全局標志或計數器,則不會在之間進行上下文切換算術運算(即++ )並將其保存到寄存器中。 我的問題是:如果我們不使用sig_atomi ...

有沒有辦法測試我是否在信號處理程序中?

[英]Is there a way to test whether I'm in a signal handler?

我不得不處理一個可以從大型項目中的不同位置調用的日志記錄模塊。 我遇到的問題是,有時可以從信號處理程序內執行的代碼調用模塊。 通常,日志記錄模塊包含使用localtime()和strftime()的時間數據,但當然這些調用不是異步信號安全的,並且如果從信號處理程序中調用,則可能導致死鎖。 ...


排序:
質量:
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM