小编Zac*_*ach的帖子

自我类型注释中这与自我的区别?

在各种Scala文献中,我看到一些使用"this"的自我类型注释和其他使用"self"的注释:

trait A { this: B => ... }
trait A { self: B => ... }
Run Code Online (Sandbox Code Playgroud)

使用"this"或"self"之间有什么真正的区别吗?你用的是什么名字是否重要?这有效吗?

trait A { foo: B => ... }
Run Code Online (Sandbox Code Playgroud)

scala

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

好斯卡拉介绍文章/视频,以激起胃口

你看过哪些好的在线文章或视频最有可能让开发人员对Scala感兴趣?我正在寻找一个简短的介绍,直到潜入示例代码,并留下一个不知道Scala想要了解更多信息的开发人员.

scala

10
推荐指数
3
解决办法
2293
查看次数

如何在Upstart脚本中预启动设置环境变量?

我们有一个自定义的C++守护程序应用程序,它只能分叉一次.所以我们一直在Ubuntu 12.04上的Upstart脚本中这样做,它完美地工作:

expect fork
exec /path/to/the/app
Run Code Online (Sandbox Code Playgroud)

但是现在我们需要向我们的app传递一个参数,该参数包含运行它的机器上的CPU数量:

cat /proc/cpuinfo | grep processor | wc -l
Run Code Online (Sandbox Code Playgroud)

我们的第一次尝试就是:

expect fork
exec /path/to/the/app -t `cat /proc/cpuinfo | grep processor | wc -l`
Run Code Online (Sandbox Code Playgroud)

而我们开始用正确的-t值的应用程序,新贵跟踪错误的PID值,我假设,因为这些猫,grep的&WC命令在EXEC所有启动过程中我们的应用程序之前.

我也试过这个,即使它不起作用,我想因为设置一个env var运行一个进程?Upstart仍然跟踪错误的pid:

expect fork
script
    NUM_CORES=32
    /path/to/the/app -t $NUM_CORES
end script
Run Code Online (Sandbox Code Playgroud)

我也试过在env节中这样做,但显然那些不运行命令:

env num_cores=`cat /proc/cpuinfo | grep processor | wc -l`
Run Code Online (Sandbox Code Playgroud)

也尝试在pre-start中执行此操作,但设置的env vars在exec节中没有任何值:

pre-start
    NUM_CORES=32
end script
Run Code Online (Sandbox Code Playgroud)

知道如何正确设置这个NUM_CORES,并仍然让Upstart跟踪我们的应用程序一次分叉的正确pid吗?

upstart environment-variables

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

标签 统计

scala ×2

environment-variables ×1

upstart ×1