小编Mar*_*aux的帖子

用于生成进程的shell脚本,在SIGTERM上终止子进程

我想编写一个shell脚本,在后台生成几个长时间运行的进程,然后挂起.收到SIGTERM后,我希望所有子进程也终止.

基本上,我想要一个"主过程".

这是我到目前为止所得到的:

#!/bin/sh

sleep 600 &
PID1="$!"

sleep 600 &
PID2="$!"

# supposedly this should kill the child processes on SIGTERM. 
trap "kill $PID1 $PID2" SIGTERM 

wait
Run Code Online (Sandbox Code Playgroud)

上面的脚本失败了trap: 10: SIGTERM: bad trap.

编辑:我正在使用Ubuntu 9.04

bash scripting sh long-running-processes sigterm

7
推荐指数
2
解决办法
2万
查看次数

当我一次迭代两个数组时,我用哪一个作为限制?

我总是在努力学习以下Java示例:

String breads[] = {"Brown", "White", "Sandwich"};
int count[] = new int[breads.length];
for (int i = 0; i < ****; i++)
{
   // Prompt the number of breads
}
Run Code Online (Sandbox Code Playgroud)

****:我应该选择哪个array.length?
我可以选择breads.length,count.length
我知道这将是相同的结果,但我不知道我应该选择哪一个.

还有很多其他例子我会遇到同样的问题.
我相信你过去也遇到过这个问题.

你应该选择什么?是否有一般协议?

谢谢

language-agnostic coding-style

7
推荐指数
2
解决办法
211
查看次数

在Linux下检测Python/GTK中的用户注销/关闭 - 未收到SIGTERM/HUP

好吧这可能是一个很难的,我有一个pyGTK应用程序,由于我无法捕获/控制的X Window错误导致随机崩溃.

所以我创建了一个包装器,一旦检测到崩溃就重新启动应用程序,现在出现了问题,当用户注销或关闭系统时,应用程序以状态1退出.但是在某些X错误上它也会这样做.

所以我尝试了任何事情以捕获关闭/注销,但没有成功,这是我尝试过的:

import pygtk
import gtk
import sys


class Test(gtk.Window):
    def delete_event(self, widget, event, data=None):
        open("delete_event", "wb")

    def destroy_event(self, widget, data=None):
        open("destroy_event", "wb")

    def destroy_event2(self, widget, event, data=None):
        open("destroy_event2", "wb")

    def __init__(self):
        gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
        self.show()
        self.connect("delete_event", self.delete_event)
        self.connect("destroy", self.destroy_event)
        self.connect("destroy-event", self.destroy_event2)      

def foo():
    open("add_event", "wb")

def ex():
    open("sys_event", "wb")


from signal import *
def clean(sig):
    f = open("sig_event", "wb")
    f.write(str(sig))
    f.close()
    exit(0)

for sig in (SIGABRT, SIGILL, SIGINT, SIGSEGV, SIGTERM):
    signal(sig, lambda *args: clean(sig))


def at():
    open("at_event", "wb") …
Run Code Online (Sandbox Code Playgroud)

python linux gtk pygtk sigterm

7
推荐指数
1
解决办法
3601
查看次数

Java:使用trim()后得到不正确的string.length()

我有字符串"22",我的长度是3;

我用了 .trim()

还有什么可能是这个原因?

java string

7
推荐指数
2
解决办法
4238
查看次数

无符号负原语?

在C++中,我们可以创建原语unsigned.但他们总是积极的.还有办法制作无符号负变量吗?我知道无符号这个词的意思是"没有符号",所以也不是减号( - ).但我认为C++必须提供它.

c++ primitive unsigned negative-number

7
推荐指数
1
解决办法
810
查看次数

如何强制实例化静态字段

我对以下代码的输出感到非常惊讶:

国家级

public class Country {

    private static Map<String, Country> countries = new HashMap<String, Country>();

    private final String name;

    @SuppressWarnings("LeakingThisInConstructor")
    protected Country(String name) {
        this.name = name;
        register(this);
    }

    /** Get country by name */
    public static Country getCountry(String name) {
        return countries.get(name);
    }

    /** Register country into map */
    public static void register(Country country) {
        countries.put(country.name, country);
    }

    @Override
    public String toString() {
        return name;
    }

    /** Countries in Europe */
    public static class EuropeCountry extends Country {

        public …
Run Code Online (Sandbox Code Playgroud)

java static

7
推荐指数
1
解决办法
1592
查看次数

可以在Mavericks(OS X 10.9)上使用XCode 5为iOS 6开发吗?

这个问题已经过时了.小牛队已经发布,一切都可以在iPod 4th上使用Xcode 5和iOS 6.


我正在考虑将我的OS X升级到Mavericks,但我仍然想继续开发我的iOS应用程序.我在网上看到Xcode 4.6.3与Mavericks(OS X 10.9)不兼容.因此,这将迫使我使用新的Xcode 5.但是,Xcode 5附带了新的iOS 7 SDK.问题是我拥有一个与iOS 7不兼容的iPod第四代.

那么,有人试过这个吗?我认为这应该是可能的,因为在WWDC 2013上,Apple非常自豪地告诉我们超过90%的客户使用最新的iOS,目前仍然是iOS 6.但随着iOS 7的发布,他们将会毁了这个事实,因为iOS 7似乎与iPod 4th Gen不兼容.很多人拥有这样的设备.

我错过了一些东西,还是Apple错误的方式?

xcode ipod-touch ios

7
推荐指数
2
解决办法
1万
查看次数

Java:JTabbedPane的"添加标签按钮"

是否可以像在Firefox中一样向选项卡式窗格添加按钮.

在此输入图像描述

加号按钮是我想要的.

谢谢

java tabs button jtabbedpane

6
推荐指数
1
解决办法
8901
查看次数

C#:如何使整数为负数?

如何在C#中使用整数否定?

abc = 5645307;
// how to make abc -5645307 ?
Run Code Online (Sandbox Code Playgroud)

c# integer operators

6
推荐指数
2
解决办法
4万
查看次数

Java:如何在OS X Lion中获取滚动方法?

由于OS X支持"自然滚动",我的应用程序运行错误.滚动窗格是自然滚动的,我非常喜欢.但是,当我想放大/缩小时,它的工作错误.所以,我想要做的是检查OS X的滚动方法.
如果它是"自然的",我将采用相反的滚动值MouseWheelEvent.getWheelRotation()来使我的放大/缩小行为感觉正确.

简而言之:如何知道OS X是否使用自然滚动?

java macos swing scroll mousewheel

6
推荐指数
1
解决办法
1127
查看次数