Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
2e48c0b7
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
4
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
2e48c0b7
编写于
11月 08, 2013
作者:
T
tyan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8023462: TEST_BUG: test/com/sun/net/httpserver/bugs/B6433018.java fails on slow/single core machine
Reviewed-by: chegar
上级
6afe709b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
37 addition
and
36 deletion
+37
-36
test/com/sun/net/httpserver/bugs/B6433018.java
test/com/sun/net/httpserver/bugs/B6433018.java
+37
-36
未找到文件。
test/com/sun/net/httpserver/bugs/B6433018.java
浏览文件 @
2e48c0b7
/*
* Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2006,
2013
Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
...
...
@@ -29,20 +29,19 @@
import
com.sun.net.httpserver.*
;
import
java.util.*
;
import
java.util.concurrent.*
;
import
java.io.*
;
import
java.net.*
;
public
class
B6433018
{
static
String
CRLF
=
"\r\n"
;
static
final
String
CRLF
=
"\r\n"
;
/* invalid HTTP POST with extra CRLF at end */
/* This checks that the server is able to handle it
* and recognise the second request */
static
String
cmd
=
static
final
String
cmd
=
"POST /test/item HTTP/1.1"
+
CRLF
+
"Keep-Alive: 300"
+
CRLF
+
"Proxy-Connection: keep-alive"
+
CRLF
+
...
...
@@ -61,45 +60,47 @@ public class B6433018 {
"Pragma: no-cache"
+
CRLF
+
"Cache-Control: no-cache"
+
CRLF
+
CRLF
;
public
static
void
main
(
String
[]
args
)
throws
Exception
{
Handler
handler
=
new
Handler
();
InetSocketAddress
addr
=
new
InetSocketAddress
(
0
);
HttpServer
server
=
HttpServer
.
create
(
addr
,
0
);
HttpContext
ctx
=
server
.
createContext
(
"/test"
,
handler
);
public
static
void
main
(
String
[]
args
)
throws
Exception
{
CountDownLatch
finished
=
new
CountDownLatch
(
2
);
Handler
handler
=
new
Handler
(
finished
);
InetSocketAddress
addr
=
new
InetSocketAddress
(
0
);
HttpServer
server
=
HttpServer
.
create
(
addr
,
0
);
HttpContext
ctx
=
server
.
createContext
(
"/test"
,
handler
);
server
.
start
();
server
.
start
();
int
port
=
server
.
getAddress
().
getPort
();
try
(
Socket
s
=
new
Socket
(
"localhost"
,
port
);
OutputStream
os
=
s
.
getOutputStream
())
{
os
.
write
(
cmd
.
getBytes
());
finished
.
await
(
30
,
TimeUnit
.
SECONDS
);
}
finally
{
server
.
stop
(
2
);
}
Socket
s
=
new
Socket
(
"localhost"
,
server
.
getAddress
().
getPort
());
if
(
finished
.
getCount
()
!=
0
)
throw
new
RuntimeException
(
"did not receive the 2 requests"
);
try
{
OutputStream
os
=
s
.
getOutputStream
();
os
.
write
(
cmd
.
getBytes
());
Thread
.
sleep
(
3000
);
s
.
close
();
}
catch
(
IOException
e
)
{
}
server
.
stop
(
2
);
if
(
requests
!=
2
)
{
throw
new
RuntimeException
(
"did not receive the 2 requests"
);
}
System
.
out
.
println
(
"OK"
);
System
.
out
.
println
(
"OK"
);
}
public
static
boolean
error
=
false
;
static
int
requests
=
0
;
static
class
Handler
implements
HttpHandler
{
int
invocation
=
1
;
public
void
handle
(
HttpExchange
t
)
throws
IOException
{
InputStream
is
=
t
.
getRequestBody
();
Headers
map
=
t
.
getRequestHeaders
();
Headers
rmap
=
t
.
getResponseHeaders
();
while
(
is
.
read
()
!=
-
1
)
;
is
.
close
();
t
.
sendResponseHeaders
(
200
,
-
1
);
private
final
CountDownLatch
finished
;
Handler
(
CountDownLatch
finished
)
{
this
.
finished
=
finished
;
}
@Override
public
void
handle
(
HttpExchange
t
)
throws
IOException
{
try
(
InputStream
is
=
t
.
getRequestBody
())
{
Headers
map
=
t
.
getRequestHeaders
();
Headers
rmap
=
t
.
getResponseHeaders
();
while
(
is
.
read
()
!=
-
1
);
}
t
.
sendResponseHeaders
(
200
,
-
1
);
t
.
close
();
requests
++
;
finished
.
countDown
()
;
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录