小编Aha*_*ine的帖子

Process.waitFor()是否使进程依赖于java父级?

通常,如果我通过以下方式创建进程:

Process proc = new ProcessBuilder("some_long_running_script.py").start();
Run Code Online (Sandbox Code Playgroud)

然后我的java程序完成,我可以看到脚本进程继续运行(如预期的那样)

但是,如果我然后添加代码:

proc.waitFor();
Run Code Online (Sandbox Code Playgroud)

然后在脚本完成之前杀死我的java程序,我可以看到脚本也死了(不像预期的那样).

这似乎是说"waitFor()"以某种方式将脚本进程与我的java进程合并,这是设计的吗?我似乎无法在文档中的任何地方看到它.

这可能是特定于操作系统吗 我在Mac Yosemite上运行

java

5
推荐指数
0
解决办法
146
查看次数

在 Ktor 中测试 Post 请求

Ktor(kotlin web 框架)有一个很棒的可测试模式,可以将 http 请求包装在单元测试中。他们给出了一个很好的例子,说明如何在此处测试 GET 端点,但是我在使用 http POST 时遇到了问题。

我试过了,但帖子参数似乎没有添加到请求中:

    @Test
fun testSomePostThing() = withTestApplication(Application::myModule) {
    with(handleRequest(HttpMethod.Post, "/api/v2/processing") {
        addHeader("content-type", "application/x-www-form-urlencoded")
        addHeader("Accept", "application/json")
        body = "param1=cool7&param2=awesome4"
    }) {
        assertEquals(HttpStatusCode.OK, response.status())
        val resp = mapper.readValue<TriggerResponse>(response.content ?: "")
        assertEquals(TriggerResponse("cool7", "awesome4", true), resp)
    }
}
Run Code Online (Sandbox Code Playgroud)

谁有想法?

http kotlin ktor

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

标签 统计

http ×1

java ×1

kotlin ×1

ktor ×1