Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
6e708e35
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看板
提交
6e708e35
编写于
3月 04, 2011
作者:
A
alanb
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6944810: (ch) Assert failure in sun.nio.ch.PendingIoCache.clearPendingIoMap [win]
Reviewed-by: chegar
上级
80aee3ba
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
16 addition
and
33 deletion
+16
-33
src/share/classes/java/nio/channels/AsynchronousFileChannel.java
...re/classes/java/nio/channels/AsynchronousFileChannel.java
+2
-2
src/windows/classes/sun/nio/ch/PendingIoCache.java
src/windows/classes/sun/nio/ch/PendingIoCache.java
+4
-3
src/windows/classes/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java
...lasses/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java
+8
-5
src/windows/classes/sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java
...sses/sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java
+2
-2
test/ProblemList.txt
test/ProblemList.txt
+0
-21
未找到文件。
src/share/classes/java/nio/channels/AsynchronousFileChannel.java
浏览文件 @
6e708e35
...
...
@@ -48,7 +48,7 @@ import java.util.Collections;
*
* <p> An asynchronous file channel does not have a <i>current position</i>
* within the file. Instead, the file position is specified to each read and
* write meth
d that initiate
asynchronous operations. A {@link CompletionHandler}
* write meth
od that initiates
asynchronous operations. A {@link CompletionHandler}
* is specified as a parameter and is invoked to consume the result of the I/O
* operation. This class also defines read and write methods that initiate
* asynchronous operations, returning a {@link Future} to represent the pending
...
...
@@ -73,7 +73,7 @@ import java.util.Collections;
* which tasks are submitted to handle I/O events and dispatch to completion
* handlers that consume the results of I/O operations on the channel. The
* completion handler for an I/O operation initiated on a channel is guaranteed
* to be invoked by one threads in the thread pool (This ensures that the
* to be invoked by one
of the
threads in the thread pool (This ensures that the
* completion handler is run by a thread with the expected <em>identity</em>).
* Where an I/O operation completes immediately, and the initiating thread is
* itself a thread in the thread pool, then the completion handler may be invoked
...
...
src/windows/classes/sun/nio/ch/PendingIoCache.java
浏览文件 @
6e708e35
...
...
@@ -110,8 +110,7 @@ class PendingIoCache {
if
(
closed
)
return
;
// handle the case that where there are I/O operations that have
// not completed.
// handle case where I/O operations that have not completed.
if
(!
pendingIoMap
.
isEmpty
())
clearPendingIoMap
();
...
...
@@ -132,7 +131,9 @@ class PendingIoCache {
closePending
=
true
;
try
{
this
.
wait
(
50
);
}
catch
(
InterruptedException
x
)
{
}
}
catch
(
InterruptedException
x
)
{
Thread
.
currentThread
().
interrupt
();
}
closePending
=
false
;
if
(
pendingIoMap
.
isEmpty
())
return
;
...
...
src/windows/classes/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java
浏览文件 @
6e708e35
...
...
@@ -439,6 +439,7 @@ public class WindowsAsynchronousFileChannelImpl
address
=
((
DirectBuffer
)
buf
).
address
();
}
boolean
pending
=
false
;
try
{
begin
();
...
...
@@ -449,6 +450,7 @@ public class WindowsAsynchronousFileChannelImpl
n
=
readFile
(
handle
,
address
,
rem
,
position
,
overlapped
);
if
(
n
==
IOStatus
.
UNAVAILABLE
)
{
// I/O is pending
pending
=
true
;
return
;
}
else
if
(
n
==
IOStatus
.
EOF
)
{
result
.
setResult
(
n
);
...
...
@@ -460,14 +462,15 @@ public class WindowsAsynchronousFileChannelImpl
// failed to initiate read
result
.
setFailure
(
toIOException
(
x
));
}
finally
{
if
(!
pending
)
{
// release resources
if
(
overlapped
!=
0L
)
ioCache
.
remove
(
overlapped
);
releaseBufferIfSubstituted
();
}
end
();
}
// release resources
if
(
overlapped
!=
0L
)
ioCache
.
remove
(
overlapped
);
releaseBufferIfSubstituted
();
// invoke completion handler
Invoker
.
invoke
(
result
);
}
...
...
src/windows/classes/sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java
浏览文件 @
6e708e35
...
...
@@ -239,14 +239,14 @@ class WindowsAsynchronousSocketChannelImpl
result
.
setResult
(
null
);
}
}
catch
(
Throwable
x
)
{
if
(
overlapped
!=
0L
)
ioCache
.
remove
(
overlapped
);
exc
=
x
;
}
finally
{
end
();
}
if
(
exc
!=
null
)
{
if
(
overlapped
!=
0L
)
ioCache
.
remove
(
overlapped
);
closeChannel
();
result
.
setFailure
(
toIOException
(
exc
));
}
...
...
test/ProblemList.txt
浏览文件 @
6e708e35
...
...
@@ -380,30 +380,9 @@ java/io/File/MaxPathLength.java windows-all
# jdk_nio
# 6944810
java/nio/channels/FileChannel/ReleaseOnCloseDeadlock.java windows-all
# 6963118
java/nio/channels/Selector/Wakeup.java windows-all
# The asynchronous I/O implementation on Windows requires Windows XP or newer.
# We can remove the following once all Windows 2000 machines have been
# decommissioned.
java/nio/channels/AsynchronousChannelGroup/Basic.java windows-5.0
java/nio/channels/AsynchronousChannelGroup/GroupOfOne.java windows-5.0
java/nio/channels/AsynchronousChannelGroup/Identity.java windows-5.0
java/nio/channels/AsynchronousChannelGroup/Restart.java windows-5.0
java/nio/channels/AsynchronousChannelGroup/Unbounded.java windows-5.0
java/nio/channels/AsynchronousDatagramChannel/Basic.java windows-5.0
java/nio/channels/AsynchronousFileChannel/Lock.java windows-5.0
java/nio/channels/AsynchronousServerSocketChannel/Basic.java windows-5.0
java/nio/channels/AsynchronousServerSocketChannel/WithSecurityManager.java windows-5.0
java/nio/channels/AsynchronousSocketChannel/Basic.java windows-5.0
java/nio/channels/AsynchronousSocketChannel/DieBeforeComplete.java windows-5.0
java/nio/channels/AsynchronousSocketChannel/Leaky.java windows-5.0
java/nio/channels/AsynchronousSocketChannel/StressLoopback.java windows-5.0
java/nio/channels/Channels/Basic2.java windows-5.0
# 6959891
com/sun/nio/sctp/SctpChannel/SocketOptionTests.java
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录