首页 文章
  • 0 votes
     answers
     views

    QML On Item Changed Signal

    为MyObject Item { property int current: 0 } 这可以配置为发出信号,以便以下工作吗? Item { property variant myObj: MyObject {} onMyObjChanged: doThis() ... }
  • -2 votes
     answers
     views

    创建与MATLAB集成的应用程序

    我想创建一个移动应用来分析两种声音 . 一个来自数据库,另一个来自录音 . 我发现MATLAB信号工具箱能够检查两个声音的相似之处 . 但是,我不知道如何将MATLAB集成到移动应用程序中 . 想法如下:用户选择一个句子阅读>用户记录他/她的声音>与matlab检查器集成的应用程序信号相似性>应用程序显示相似性的结果 .
  • 1 votes
     answers
     views

    JDK问题:中断在IO操作上被阻塞的另一个线程,信号可能会失败

    OpenJDK实现(linux部分)使用信号来中断在本机IO操作上阻塞的另一个线程 . 基本思想是,向目标线程发送唤醒信号将导致阻塞IO调用返回EINTR . 例如,在异步关闭使用的fd时中断被阻塞的线程: https://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/solaris/native/java/net/linux_cl...
  • 6 votes
     answers
     views

    sigprocmask()在UNIX中阻塞信号

    我写了一小段代码 . 此代码首先阻塞,然后将SIGRTMIN添加到同一个集合中 . 所以,我的最终信号集是{SIGSEGV,SIGRTMIN} . 因此,如果我使用SIG_UNBLOCK,根据我的理解,第一个SIGRTMIN应该被解除阻塞,然后如果我调用SIG_UNBLOCK,则应该取消阻塞SIGSEGV . 即,1){SIGSEGV,SIGRTMIN} 2)SIG_UNBLOCK = unblo...
  • 3 votes
     answers
     views

    过程信号掩码,阻塞信号集和阻塞信号之间的差异?

    了解信号,我想知道过程信号掩码,阻塞信号集,信号处理程序和阻塞信号之间的细微差别 . 问题涉及(在Debian上): sigprocmask(2) sigsetops(3)相关功能 每个进程都有自己的信号掩码(包含被阻塞信号的long) . 并且可以通过使用* set变量的NULL参数调用sigprocmask(2)来获得信号集,这将导致旧的进程掩码被放入* oldset,不变: #i...
  • -1 votes
     answers
     views

    信号掩码和信号集之间有什么关系和区别?

    来自APUE 每个进程都有一个信号掩码,用于定义当前阻止传递到该进程的信号集 . 我们可以认为这个掩码对于每个可能的信号都有一位 . 如果该位为给定信号打开,则该信号当前被阻止 . 进程可以通过调用sigprocmask检查和更改其当前信号掩码,我们在第10.12节中对此进行了描述 . 由于信号数量可能超过整数中的位数,POSIX.1定义了一个数据类型,称为sigset_t,它保存一个信号集 ....
  • 25 votes
     answers
     views

    交互式shell在孤立进程组中应该做什么?

    简短的问题是,如果shell在没有tty的孤立进程组中应该怎么办?但我建议阅读这个长问题,因为它很有趣 . 这是一个有趣而令人兴奋的方式,使用您最喜欢的外壳将您的笔记本电脑变成便携式空间加热器(除非您是其中一个tcsh怪人): #include <unistd.h> int main(void) { if (fork() == 0) { execl(&qu...
  • 1 votes
     answers
     views

    C中的信号处理

    我制作了以下程序来学习 SIG_SETMASK 的行为 . 以下程序应该阻止 SIGINT 中断信号,直到 func() 函数调用 sigprocmask(SIG_SETMASK,&fOnemask,NULL); 在fOnemask为空的情况下,cuz之前没有信号存储在sigset中 . 但正如我所说的那样 sigprocmask(SIG_SETMASK,&fTwoCmask,N...
  • 9 votes
     answers
     views

    需要解释sigsuspend

    我需要澄清sigsuspend主题 . 我有一个简化的例子 sigset_t mask, oldmask; sigemptyset (&mask); sigaddset (&mask, SIGRTMIN+1); sigprocmask (SIG_BLOCK, &mask, &oldmask); sigsuspend(&oldmask); sigprocm...
  • 3 votes
     answers
     views

    为单个线程创建信号处理程序

    我想知道 sigaction 是否会为调用线程或整个进程创建一个信号处理程序 . 如果它解除阻塞信号并为整个过程创建信号处理程序,那么我怎样才能确保只有一个线程将使用信号处理程序并让其他线程阻塞信号 . 在我的情况下,我想要一个线程在报警信号关闭时调用信号处理程序而其他线程只是阻止它 . void alarmSigHandler(int signo){ } void* alarm_threa...
  • 0 votes
     answers
     views

    在阻塞时获取SIGSEGV信号[重复]

    这个问题在这里已有答案: Is SIGSEGV special when generated by kill? 3个答案 当程序阻止硬件生成的信号(例如 SIGSEGV )然后获取此信号时,我无法理解程序的行为 . 例如,如果 SIGSEGV 的信号处理程序与sigaction一起安装(信号在处理程序内被阻止),但程序在处理程序中获得另一个 SIGSEGV . 在这种情况下,我找不到程序应该...
  • 0 votes
     answers
     views

    关于sigprocmask(),SIG_BLOCK和SIG_SETMASK

    在APUE的第10章信号中 . 我有一些关于 sigprocmask() , SIG_BLOCK 和 SIG_SETMASK 的问题 . 这些书说"we saved the old mask when we blocked the signal" . 我的理解是: 我们声明 newmask 类型为 sigset_t ,然后 sigempty(&newmask) 表示...
  • 4 votes
     answers
     views

    SIGHUP&SIGCONT

    你能否解释一下UNIX信号系统的逻辑:首先它向进程组发送SIGHUP信号然后发送SIGCONT信号,尽管SIGHUP的主要思想是“自杀,没有终端”?
  • 2 votes
     answers
     views

    儿童和父母信号之间的并发竞争

    我在CMU过去的考试中发现了这个问题,我无法了解输出是如何实现的 . 基本上,它背后的想法是有一个父进程阻止用户定义的信号,然后父进程分叉一个孩子 . 并且基于首先运行的进程(也就是:赢得比赛),可以实现不同的输出 . Here is the question that is being asked in the exam(请阅读) 这是考试的代码: int i = 1; void handle...
  • 0 votes
     answers
     views

    SIGTERM到所有子进程但不是父进程

    我有一个C程序,通过响应信号来操作 . 一些信号导致父母分叉 . 这允许在父母继续响应信号的同时进行其他处理 . 当父节点发送SIGTERM时,我希望分叉的子节点也接收SIGTERM . 在父母退出之前,孩子完成处理SIGTERM并不重要 . 但是,使用以下代码,当我从父级调用 kill(0, SIGTERM) 时,子级不会收到SIGTERM . 从kill manpage开始,看起来所有的孩子都...
  • 7 votes
     answers
     views

    使用SIGTERM在子进程上调用kill会终止父进程,但使用SIGKILL调用它会使父进程保持活动状态

    这是How to prevent SIGINT in child process from propagating to and killing parent process?的延续 在上面的问题中,我了解到 SIGINT 并没有从子节点到父节点,而是发布到整个前台进程组,这意味着我需要编写一个信号处理程序来防止父节点在我按下 CTRL + C 时退出 . 我试图实现这一点,但这是问题所在 . 关...
  • 0 votes
     answers
     views

    获得“用户信号1”终止我的进程,UNIX中的C语言

    void printToScreen(){ write(1, boardString, strlen(boardString)) == -1 ? writeError() : 1; write(1, "\n", 1) == -1 ? writeError() : 1; int i = 0; char * pch; pch = strto...
  • 0 votes
     answers
     views

    Linux:多SIGIO问题(异步串行通信)

    我正在研究我正在研究的C程序中与SIGIO相关的问题 . 平台:Linux 2.6.30,x86 Arch 场景:异步串行通信 . 我从Linux Serial Programming HowTo开始跟踪this async-communication example,它运行得很完美 . 然后我删除了“sleep check wait_flag”的东西,现在我直接在signal_han...
  • 0 votes
     answers
     views

    处理SIGCHLD时,睡眠功能无效

    SIGCHLD 处理和 sleep 函数之间有什么关系? #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <signal.h> #include <string.h> #include <sys/types.h> #include <...
  • 0 votes
     answers
     views

    Matlab和Simulink中的信号生成

    有一个结构 Meas ,它有一个名为 B_cal 的二进制信号,其时间和值作为其参数,其值为<20583 * 1 double> Signal . 我在Simulink中使用此信号通过From Workspace块, [Meas.(Meas.time),Meas.value] 作为块的参数 . 现在我需要生成一个新的二进制信号,它只有第一位高(即1),所有其他位低 . 信号应与 B_c...
  • 1 votes
     answers
     views

    读取客户端响应会导致服务器崩溃

    我正在编写一个程序,其中服务器由另一个程序发出信号,在收到信号后,它从共享内存段读取目录名称,并通过sock将其发送给客户端 . 客户端发送回目录的内容并断开连接 我的问题是,当服务器收到客户端响应时,它会打印它并立即停止侦听端口 . 该程序适用于所有其他实例,例如客户端连接,不发送任何内容,然后断开连接 . void handler(int signal_number) { int...
  • 21 votes
     answers
     views

    fork(应该是)在线程程序中对信号处理程序是否安全?

    我真的不确定POSIX在存在线程和信号时对 fork 的安全性的要求 . fork 被列为异步信号安全函数之一,但如果库代码有可能注册了非同步信号安全的 pthread_atfork 处理程序,这是否会否定 fork 的安全性?答案取决于运行信号处理程序的线程是否正在使用atfork处理程序所需的资源?或者换句话说,如果atfork处理程序使用同步资源(互斥体等),但是从一个永远不会访问这些资...
  • 1 votes
     answers
     views

    芹菜:事件==信号?

    我正在尝试连接到这里描述的芹菜信号:http://docs.celeryproject.org/en/latest/userguide/signals.html我可以连接到task_sent信号没问题 . 但是当我尝试连接到task_success或task_postrun时,没有任何反应 . 对于我的经纪人和我的后端我正在使用postgres sql . I'm trying to unders...
  • 1 votes
     answers
     views

    优雅地停止heroku工作者的rufus调度程序

    我在一个在heroku worker上运行的rake任务中运行rufus-scheduler . 我经常得到SIGTERM异常,因为常规的heroku dynos重启(参见heroku dyno docs) . 我想实现上面提到的文档中显示的正常关闭,并在此过程中关闭rufus调度程序: trap('TERM') do scheduler.shutdown(:kill) exit end ...
  • 0 votes
     answers
     views

    MATLAB:调整x轴

    所以我在matlab上的图形上有多个信号,但是我只是想用0到3的x轴叠加这些信号,而不会截断部分信号 . 我会用什么命令来实现这个目标?
  • 75 votes
     answers
     views

    在不锁定互斥锁的情况下调用pthread_cond_signal

    我在某个地方读到我们应该在调用 pthread_cond_signal 之前锁定 mutex 并在调用后解锁静音: pthread_cond_signal()例程用于发信号(或唤醒)正在等待条件变量的另一个线程 . 它应该在锁定互斥锁后调用,并且必须解锁互斥锁才能完成pthread_cond_wait()例程 . 我的问题是:是不是可以在不锁定互斥锁的情况下调用 pthread_cond_si...
  • 0 votes
     answers
     views

    Linux Kernel何时清除挂起位向量中的挂起位

    我的教科书说每当收到k型信号时,Kernel就会清除位k,“所以我认为这意味着当信号处理程序正在处理时,信号被阻塞,我的理解是否正确?如果我的理解是正确的,那就是信号仅在信号处理程序完成所有指令后被阻止,或者信号在第一条指令之前被阻止?
  • 1 votes
     answers
     views

    如何通知maxlength溢出

    所有, 对不起,对于这样一个新手问题,但我是Qt的新手,所以 有没有办法在执行默认处理程序之前连接信号?我正在寻找一种在QLineEdit :: textChanged信号之前执行我的函数以执行有关最大长度限制的通知的方法 . GTK有connect_before(),connect()和connect_after() . Qt中有类似的东西吗? TIA!
  • 0 votes
     answers
     views

    如何实现m2m_changed?

    基本上,我的问题是如何实现m2m_changed,以便在创建,更新或删除ClassSubjectGrade的实例时,ClassSubjectGrade和Student之间的中间表也会更新 . 例: 在编辑ClassSubjectGrade实例时添加更多学生将添加与中间表关联的学生 从ClassSubjectGrade实例中删除学生将删除与中间表关联的学生 删除ClassSubjectG...
  • 6 votes
     answers
     views

    如何在android中找到另一台设备的wifi信号方向?

    我使用我的Android手机作为接入点 . 现在我想找到与手机连接的wifi设备的距离和方向 . 请通过合适的示例和代码帮助我 . 提前致谢 .

热门问题