![](/img/trans.png)
[英]Why does my lock not fix my race condition?
我已經編寫了使用共享 memory 的小程序,它基本上發送字節。 我認為我遇到的問題是,我陷入了子進程(它打印 Process 2: 5000 然后什么也沒有)。 誰能幫我? 我真的很感激! 我期待流程交替進行。 我試過:以不同方式放置鎖、添加鎖、移除鎖、移除解鎖、睡眠(1)。 ...
[英]Why does my lock not fix my race condition?
我已經編寫了使用共享 memory 的小程序,它基本上發送字節。 我認為我遇到的問題是,我陷入了子進程(它打印 Process 2: 5000 然后什么也沒有)。 誰能幫我? 我真的很感激! 我期待流程交替進行。 我試過:以不同方式放置鎖、添加鎖、移除鎖、移除解鎖、睡眠(1)。 ...
[英]Producer consumer using boost::interprocess_confition with boost:interprocess shared memory. Consumer dominates 100%
只是舉一個簡單的例子,因為我遇到了一個更復雜的用例的問題,並且想在花費太多時間進行反復試驗之前了解基本情況。 場景:我有兩個二進制文件,它們應該輪流遞增一個數字(存儲在共享內存中)。 實際發生的情況是,“消費者”應用程序 100% 接管了“創建者”的運行。 如果我在這種情況下在消費者中添加一個小的 ...
[英]FileNotFoundError with shared memory on Linux
賞金將在 2 天后到期。 此問題的答案有資格獲得+250聲望賞金。 Matthias想讓更多人關注這個問題。 我正在嘗試為我的 Python 應用程序創建一個共享的 memory,它應該在父進程和從該父進程派生的另一個進程中使用。 在大多數情況下工作正常,但是,有時我會得到以下堆棧跟蹤:Trac ...
[英]Exercise question in a Raymond Chen's article about mutexes in Windows
我讀過 Raymond Chen 的文章“了解 WAIT_ABANDONED 的后果”。 你可以在這里找到它我的問題是關於最后的練習部分。 它說, 為什么我們在鏈表數據結構中使用索引而不是指針? 我認為這是因為鏈表可能在多個進程之間共享,並且每個進程都有自己的私有地址塊。 因此,使用指針來實現跨多個 ...
[英]Shared memory or reference to memory objects for UWP multi instance app?
有沒有辦法在 UWP 應用程序的多個實例之間創建共享 memory? 例如,我需要在 UWP 應用程序的一個實例中加載數百張圖像(作為位圖)。 在另一個實例中加載相同的圖像可能需要雙倍的 memory。 UWP 應用程序的多個實例是否可以使用相同的 memory 引用? 或者有什么辦法可以減少這 ...
[英]Shared memory SPSC queue for strings without allocations in C++
賞金將在 7 小時后到期。 此問題的答案有資格獲得+50聲望賞金。 madhur4127想提請更多人注意這個問題: 這是一個小眾問題,所以是的,這值得賞金我正在尋找類似於由boost::lockfree::spsc_queue和boost::interprocess提供的 SHM(共享內存)SP ...
[英]Sending a POD type in shared memory without serializing
我的項目中有兩個進程 P1 和 P2。 他們使用boost::interprocess::shared_memory來創建一個正常工作的共享內存段(同步沒有問題)。 我的用例包括從 P1 向 P2 發送一個 POD 類型( 一種可簡單復制的類型)。 假設 POD 類型如下所示:struct Widg ...
[英]Different shared memory values between processes
我通過這個函數創建了一個緩沖區。 然后當我在進程 1 中使用指針及其函數時,一切正常。 在進程 2 中,我使用此函數獲取緩沖區: 但是緩沖區的內容不同(奇怪的值)。 我究竟做錯了什么? 編輯: 流程1代碼: 流程2代碼: 其他代碼: ...
[英]Ending the multiprocessing queue
我想讓以下代碼運行,同時循環將項目放入隊列中以供進程獲取和打印。 當父進程創建項目時,子進程寫入它們。 但是當隊列中的所有項目都被處理時,程序會卡住 ...
[英]Latency jitters when using shared memory for IPC
我使用共享 memory 在兩個進程之間傳輸數據,使用boost::interprocess::managed_shared_memory分配一個向量作為緩沖區和原子變量來強制執行 memory 同步(類似於 boost::lockfree::spsc_queue)。 我正在使用 2 個進程測量設置 ...
[英]Two processes mmap same file on linux, when is the memory shared?
linux進程間共享同一個文件的物理memory backing mmap在什么情況下? 我明白,必要條件是MAP_SHARED 。 我知道,如果進程使用相同的文件描述符(例如,子進程從父進程繼承它),則 memory 將被共享。 但是如果,例如,會發生什么每個進程自己打開文件? 一個打開它是為 ...
[英]Writing into shared memory while semaphore value is 0 causes program to freeze in C, ubuntu
我正在為操作系統的大學作業編寫一個多進程項目,我遇到了一個奇怪的問題。 在信號量值為 0 時寫入共享 memory 的特定部分會導致我的程序凍結。 更具體地說,我第一次運行 parent 的可執行文件時,第一個子進程寫入附加到 shm_segment_pointer->content 的 me ...
[英]Pytorch's share_memory_() vs built-in Python's shared_memory: Why in Pytorch we don't need to access the shared memory-block?
在嘗試了解內置multiprocessing和Pytorch 的multiprocessing包時,我觀察到兩者之間存在不同的行為。 我覺得這很奇怪,因為Pytorch 的 package 與內置的 package 完全兼容。 具體來說,我指的是進程之間共享變量的方式。 在 Pytorch 中,張 ...
[英]How create a big array in shared memory with boost::interprocess::managed_shard_memory in fast way?
我創建了一個“boost::interprocess::managed_shared_memory”的實例,並構造了一個包含“2 * 1024 * 1024 * 1024”元素的 char 數組。 不幸的是,它花費了超過 50 秒的時間。 之后我擺脫了它的初始化並將時間減少到 30 秒。 有沒有辦 ...
[英]Difference between aliased (ALI) and shared (SHM) memory on MacOS
我在 MacOS 上使用vmmap 。 對於一個區域,它顯示共享模式 = 別名 (ALI) : 我找不到任何信息,這是什么意思。 該頁面指出 Aliased (ALI) 和 shared (SHM) memory 在進程之間共享。 沒有關於ALI和SHM之間區別的進一步信息。 你能幫我理解有什么區 ...
[英]Delphi classes, shared memory, and varying DLL loading addresses
我正在使用一個古老而復雜的系統,該系統在數十個(有時數百個)Win32 進程之間共享 memory。 代碼主要是幾年前移植到 Delphi 的非常古老的 Pascal。 (幾乎)所有代碼都在一個 DLL 中,所有進程都加載它。 目前,我們已強制使用 DLL 的固定加載地址。在 linker 設置中 ...
[英]How to check if shared memory exists using shmget or ftok?
我正在通過 shm 函數使用共享 memory 在 c 中編寫項目。 我想嘗試“連接”到共享 memory 並使用 shmget() function 檢查它是否存在。 我用這個 function 嘗試了幾個標志,但未能達到預期的結果。 我想知道是否有辦法查看共享的 memory 是否已經存在。 ...
[英]Simultaneous matrix vector multiplication with multiprocessing
我想做的事我有一個 mxn numpy 數組 A,其中 m << n 我想加載到一個節點上,該節點上的所有 20 個 CPU 可以共享 memory。在每個 CPU 上,我想將 A 乘以 anx 1 向量 v,其中向量 v每個 CPU 不同,但矩陣 A 保持不變。 約束矩陣 A 足夠大, ...
[英]CUDA shared memory bank conflict unexpected timing
我試圖重現銀行沖突場景( 這里是最小的工作示例),並決定在 warp(32 個線程)訪問 32 個大小為 32 位的整數時執行基准測試,每個整數在以下 2 個場景中: 當沒有銀行沖突時( offset=1 ) 當存在 bank 沖突時( offset=32 ,所有線程都訪問bank 0 ) 這是代碼 ...
[英]Difference between share table and share streamTable?
在 DolphinDB 中,共享streamTable可以用於流式訂閱場景,而共享表則不能。 那么為什么我們仍然共享普通表呢? 共享表可以做什么而共享流表不能做什么? ...