2362N/A * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 0N/A * published by the Free Software Foundation. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 2362N/A * or visit www.oracle.com if you need additional information or have any 0N/A * @summary test on a client notification deadlock. 0N/A * @author Shanliang JIANG 0N/A * @run clean DeadLockTest 0N/A * @run build DeadLockTest 0N/A * @run main DeadLockTest 0N/A // server will close a client connection after 1 second 0N/A env.
put(
"jmx.remote.x.server.connection.timeout",
"1000");
0N/A // disable the client ping 0N/A env.
put(
"jmx.remote.x.client.connection.check.period",
"0");
0N/A // a cycle to make sure that we test the blocking problem. 0N/A // wait the server to close the client connection 0N/A // makes the listener to do a remote request via the connection 0N/A // which should be closed by the server. 0N/A // allow the listner to have time to work 0N/A // get a closed notif, should no block. 0N/A synchronized(
this) {
0N/A synchronized(
this) {
0N/A synchronized(
this) {