小编rya*_*ntm的帖子

有没有像 Python 的 Ruby 的 pty.fork 之类的东西?

我正在尝试将如下所示的 Python 代码移植到 Ruby:

import pty

pid, fd = pty.fork
if pid == 0:
  # figure out what to launch
  cmd = get_command_based_on_user_input()

  # now replace the forked process with the command
  os.exec(cmd)
else:
  # read and write to fd like a terminal
Run Code Online (Sandbox Code Playgroud)

由于我需要像终端一样读取和写入子进程,我明白我应该使用 Ruby 的 PTY 模块来代替 Kernel.fork。但它似乎没有等效的 fork 方法;我必须将命令作为字符串传递。这是我能得到的最接近 Python 功能的方法:

require 'pty'

# The Ruby executable, ready to execute some codes
RUBY = %Q|/proc/#{Process.id}/exe -e "%s"|

# A small Ruby program which will eventually replace itself with …
Run Code Online (Sandbox Code Playgroud)

ruby python linux fork pty

5
推荐指数
1
解决办法
530
查看次数

如何在.cabal文件中为不同的目标使用两个不同的编译器?

当我运行cabal build它时,使用一些Haskell编译器在我的.cabal文件中构建可执行文件和/或测试套件.

我可以控制哪个编译器用于不同的目标吗?理想情况下,我希望在同一个.cabal文件中使用单独的构建目标ghc和ghcjs .在我看来,有人可能想在同一个项目中使用ghc和拥抱或两个版本的ghc.这目前可能吗?

另外,cabal如何决定运行时使用的编译器cabal build?我看到我的~/.cabal/config文件中有一个编译器选项,但将其更改ghcghcjs取消注释,并没有改变cabal build它的作用.

haskell cabal ghcjs

5
推荐指数
1
解决办法
238
查看次数

gnuplot函数的z顺序或键中的顺序

您可以通过重新排序它们在绘图函数中出现的顺序来更改绘制在一起的两个函数的z顺序,但这也会更改键中的顺序.有没有办法重新排序函数在键或z顺序中出现的顺序,而不依赖于它在绘图函数中出现的顺序?

gnuplot

4
推荐指数
1
解决办法
1412
查看次数

Express框架或node.js如何自动提供javascript文件?

我将此行添加到我的index.jade文件中:

script(src="/socket.io/socket.io.js")
Run Code Online (Sandbox Code Playgroud)

并且它以某种方式自动知道如何将Javascript文件提供给我的客户端.这是如何运作的?

node.js express

4
推荐指数
1
解决办法
700
查看次数

在Rust中,如何在BigInt上使用已实现的特征FromStr?

我想让这个程序编译:

extern crate num;
use num::bigint::BigInt;
use std::from_str::FromStr;

fn main () {
    println!("{}", BigInt::from_str("1"));
}
Run Code Online (Sandbox Code Playgroud)

但输出rustc

testing.rs:6:20: 6:36 error: unresolved name `BigInt::from_str`.
testing.rs:6     println!("{}", BigInt::from_str("1"));
                                ^~~~~~~~~~~~~~~~
note: in expansion of format_args!
<std macros>:2:23: 2:77 note: expansion site
<std macros>:1:1: 3:2 note: in expansion of println!
testing.rs:6:5: 6:43 note: expansion site
error: aborting due to previous error
Run Code Online (Sandbox Code Playgroud)

我怀疑我做了一些非常错误的事情,但我试图搜索示例并尝试了一系列不同的更改,而我尝试过的任何工作都没有.

如何更改源代码以便编译?

rust

4
推荐指数
1
解决办法
1793
查看次数

如何从Clojure名称空间形式解析元数据?

如果我有名称空间表单,如何从中提取元数据映射?例如:

(some-function '(ns ^{:doc "docstring"})) => {:doc "docstring"} 
Run Code Online (Sandbox Code Playgroud)

clojure

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

MySQL是否缓存插入查询?

当我运行一个大型MySQL查询,将50k记录(包含10个小列)插入数据库时​​,我的查询缓存使用率从大约10MB到400MB.MySQL缓存我的插入?

mysql

0
推荐指数
1
解决办法
3395
查看次数

标签 统计

cabal ×1

clojure ×1

express ×1

fork ×1

ghcjs ×1

gnuplot ×1

haskell ×1

linux ×1

mysql ×1

node.js ×1

pty ×1

python ×1

ruby ×1

rust ×1