diff options
author | Matthew Newhook <matthew@zeroc.com> | 2014-07-23 15:06:02 -0230 |
---|---|---|
committer | Matthew Newhook <matthew@zeroc.com> | 2014-07-23 15:06:02 -0230 |
commit | 866f9ff17391176b836f9bb49f6da40c2c938441 (patch) | |
tree | 7366963294ef3356c7b887cd89af753988c21beb /java/src/IceInternal/ConnectionACMMonitor.java | |
parent | adding ACM tests for Python/Ruby/PHP (diff) | |
download | ice-866f9ff17391176b836f9bb49f6da40c2c938441.tar.bz2 ice-866f9ff17391176b836f9bb49f6da40c2c938441.tar.xz ice-866f9ff17391176b836f9bb49f6da40c2c938441.zip |
ICE-4234 - Update Ice to use current Java threading constructs
- Use ScheduledThreadPoolDispatcher not IceUtilInternal.Timer.
- Use Ice timer in glacier2, Freeze impl.
- Align C++, C# with java changes.
- Database demo now supports mariadb.
Diffstat (limited to 'java/src/IceInternal/ConnectionACMMonitor.java')
-rw-r--r-- | java/src/IceInternal/ConnectionACMMonitor.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/java/src/IceInternal/ConnectionACMMonitor.java b/java/src/IceInternal/ConnectionACMMonitor.java index b8a8021c980..effc30949eb 100644 --- a/java/src/IceInternal/ConnectionACMMonitor.java +++ b/java/src/IceInternal/ConnectionACMMonitor.java @@ -11,7 +11,8 @@ package IceInternal; class ConnectionACMMonitor implements ACMMonitor { - ConnectionACMMonitor(FactoryACMMonitor parent, Timer timer, ACMConfig config) + ConnectionACMMonitor(FactoryACMMonitor parent, java.util.concurrent.ScheduledExecutorService timer, + ACMConfig config) { _parent = parent; _timer = timer; @@ -42,7 +43,8 @@ class ConnectionACMMonitor implements ACMMonitor _connection = connection; if(_config.timeout > 0) { - _timer.scheduleRepeated(this, _config.timeout / 2); + _future = _timer.scheduleAtFixedRate(this, _config.timeout / 2, _config.timeout / 2, + java.util.concurrent.TimeUnit.MILLISECONDS); } } @@ -53,7 +55,8 @@ class ConnectionACMMonitor implements ACMMonitor _connection = null; if(_config.timeout > 0) { - _timer.cancel(this); + _future.cancel(false); + _future = null; } } @@ -80,7 +83,7 @@ class ConnectionACMMonitor implements ACMMonitor } public void - runTimerTask() + run() { Ice.ConnectionI connection; synchronized(this) @@ -103,7 +106,8 @@ class ConnectionACMMonitor implements ACMMonitor } final private FactoryACMMonitor _parent; - final private Timer _timer; + final private java.util.concurrent.ScheduledExecutorService _timer; + private java.util.concurrent.Future<?> _future; final private ACMConfig _config; private Ice.ConnectionI _connection; |