ICode9

精准搜索请尝试: 精确搜索
  • mmap是否与所有进程共享内存?2019-07-23 09:50:26

    当我这样做: myProgram.h myProgram.c struct PipeShm { // all my fields // more // ... }; struct PipeShm myPipe = { /* initialization for all fields */ }; struct PipeShm * sharedPipe = &myPipe; void func() { sharedPip

  • c – 如果其中一个进程意外死亡,进程间内存会发生什么?2019-07-23 05:00:26

    如果你对动机感兴趣我会在接下来的几句中详细阐述它,如果不是只是跳到Q. 我正在考虑制作快速记录器但是在程序崩溃时没有受到影响的记录器(也就是少数最后一次记录消息没有丢失).所以我的想法是写入共享内存(ringbuffer)并从中读取另一个低prio进程并进行转储. 但为了工作,我需要知

  • linux – 共享内存性能并保护其他进程2019-07-16 08:51:40

    我正在尝试实现一个JIT编译器(我有非常讨厌的爱好). 我希望有一个主进程保留一些持久变量,第二个进程(已经及时编译)进行一些计算并可以访问和写入持久变量. 第二个进程可以更改并重新编译,但持久变量必须在第二个进程的两次执行之间保持相同. 我的第一个问题是:共享内存是否适合它?

  • c – sizeof在编译不同程序时返回结构的不同值2019-07-12 13:00:56

    我有2个共享头文件的程序.此头文件定义具有少量成员的结构.然后是#define:#define STRUCTURE_SIZE sizeof(OUR_STRUCTURE). 然后在共享内存中使用此结构,STRUCTURE_SIZE用于shmget()的size参数. 不幸的是,对于一个程序,STRUCTURE_SIZE最终为20758,而在另一个程序中,它最终为20764.因

  • linux – fork和IPC机制2019-07-09 04:51:19

    我正在编写单线程内存重型概念验证应用程序. 该应用程序本身不会处理太多数据,主要是加载GB数据​​,然后对其进行一些数据分析. 我不想通过MT实现管理并发,不想实现锁(即互斥锁,自旋锁,……)所以我决定这次使用亲爱的旧fork().在内存为CoW的Linux上,我应该能够有效地分析相同的数

  • python – 多处理另一个函数的函数2019-07-05 13:58:44

    我正在对模拟的时间序列进行分析.基本上,它为每个时间步都执行相同的任务.由于存在非常多的时间步长,并且由于每个步骤的分析是独立的,因此我想创建一个可以多处理另一个函数的函数.后者将有参数,并返回结果. 使用共享的dictionnary和lib concurrent.futures,我设法写了这个: impor

  • c – Posix共享内存初始化2019-07-03 14:38:08

    我的问题是关于初始化使用shm_open()和mmap()获得的内存.我在几个地方看到的一个常见建议是使用标志O_CREAT | O_EXCL调用shm_open():如果成功则我们是共享内存的第一个用户并且可以初始化它,否则我们不是第一个并且共享内存有已经被另一个进程初始化了. 但是,根据我对shm_open和我

  • 如何删除未使用的共享内存和信号量?2019-07-03 12:38:55

    类似于:Delete all shared memory and semaphores on Linux然而,我想在C中这样做,而不是用一些脚本. 我的具体问题:在linux mac中,当我调试程序并在进程中终止时,共享资源(内存信号量)不会被释放.我的程序执行一些客户端服务器,其中服务器是获取共享资源的第一个进程.因此,在没有分离

  • 我们如何在linux中检查进程的“锁定”共享内存?2019-07-03 10:37:54

    我试图找到如何检查锁定的共享内存,即使用shmctl(SHM_LOCK),我发现我们可以通过检查shmid_ds.shmperm.mode标志在代码中检查它. 现在,与mlock()一样,我们可以通过检查/ proc /< PID> / status和VmLck值来检查正在使用的内存量. 我想知道是否有任何方法可以检查使用shmctl(SHM_LOCK)

  • c – 如何使用共享内存和信号量实现管道?2019-06-30 04:48:11

    我目前的任务是关于在Linux中使用共享内存实现pipe(). 因为这是我第一次使用信号量和信号量.共享内存(也是互斥)我没有经验. 有人可以解释一下它的实施情况吗?谢谢解决方法:从下面的手册页开始: 共享内存 ftok shmget shmat shmctl shmdt 信号灯 sem_init sem_wait sem_post 这个

  • c – linux中共享内存中的多个链接列表2019-06-29 23:48:28

    我使用C语言和Linux作为平台. 我想在多个进程中共享多个结构,这些结构具有链接列表的头部(这些列表也应该被共享)和指向彼此的指针.此数据所需的内存最高可达1Mb.因为我不能在共享内存中使用指针,因为它们对于不同的进程无效. 有两种选择:1)使用偏移值而不是指针.2)否则,使用不同的

  • 在shmdt()之后和shmctl之前访问共享内存(shmid,ipc_RMID,0)2019-06-23 22:39:21

    假设我有一个指针* p到先前分配的共享内存. 如果其中一个进程调用shmdt()来分离共享内存段,然后尝试分配一个值,例如: *p = 0; 在调用shmctl(shmid,IPC_RMID,0)进行销毁之前. 这样做会导致错误吗?我无法理解哪些以及为什么.解决方法:是的,这是一个错误,很可能会导致段错误. 当您调

  • c – Linux上共享内存的生命周期是多少2019-06-23 10:38:28

    我使用ftok / shmget / shmat / shmdt函数在Linux上创建,写入和读取共享段. 如果我在一个程序中写入段然后退出,随后从另一个程序中读取该段,我很惊讶地发现数据仍在那里. 我原本预计,当共享一个段的最后一个进程执行shmdt时,该段将是空闲的. 我可以依靠这种行为吗?或者它类似于在fr

  • 我应该在多个线程执行时同步mq_timedreceive调用吗?2019-06-21 02:48:27

    我在Linux上使用Posix消息队列.基本上,我有多个线程通过调用mq_timedreceive从同一队列接收消息. 如果同时运行多个线程并且队列不为空,我是否保证不会多次收到消息(即消息未被传递到多个线程)? 可以肯定的是,我可以使用互斥锁同步接收,但是如果可能的话我想避免这种锁定.我阅读了所

  • 如何在C中使用共享内存的两个不相关进程之间的指针共享一个结构?2019-06-12 13:48:45

    我的结构看起来像: typedef struct shared_data_t { char *key; char *message; }shared_data; 我需要与另一个不相关的过程共享这个结构.我正在使用POSIX共享内存与shm_open()/ mmap()来实现这一点.但是,我的目标进程没有获得共享数据及其使用SIGSEGV,这很明显.如果有人

  • Python多处理在类中共享dict2019-06-09 16:43:28

    我想了解多处理和管理器如何工作以共享内存 我有一个类,在class.init上创建了一个字典我想使用多处理来调用填充字典的类函数(每个进程添加一个不同的键). import multiprocessing as mp from multiprocessing import Process, Manager class num: def __init__(self):

  • 如何在c#中查询另一个正在运行的应用程序中的变量?2019-06-07 07:03:37

    我有一个应用程序,在启动时,检查自身的重复进程. 那部分我是对的 – 但我需要的是检查原始运行过程中的状态变量以运行一些逻辑. 那么:如何将变量(例如bool)公开提供给其他应用程序以便查询呢?解决方法:有很多方法可以做到这一点.一种非常主要的方式是从文件读/写.旧的win32方式是使

  • 如何在Java线程上使用共享内存?2019-05-29 19:50:08

    我在Java中实现了一个多线程程序,其中每个线程都是一个Node类扩展Thread类型. 所有这些类都会生成某些值,这些值将被其他类使用. 对于main来说,很容易从生成的线程中获取值,但是从线程本身,我如何获取其他线程上的值? //Start the threads from a list of objects for (int i = 0;

  • c – shm_open和ftruncate竞争条件可能吗?2019-05-20 11:39:22

    从shm_open手册页: A new shared memory object initially has zero length. The size of the object can be set using ftruncate(2). […] The shm_open() function itself does not create a shared object of a specified size because doing so would duplicate an

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有