- [ ] I have searched the [issues](https://github.com/apache/dubbo/issues) of this repository and believe that this is not a duplicate.
- [ ] I have checked the [FAQ](https://github.com/apache/dubbo/blob/master/FAQ.md) of this repository and believe that this is not a duplicate.

### Environment

* Dubbo version: xxx
* Operating System version: xxx
* Java version: xxx

### Steps to reproduce this issue

![image](https://user-images.githubusercontent.com/8758457/59562427-2e06c800-905f-11e9-9bff-9ea54d87fc6d.png)
![image](https://user-images.githubusercontent.com/8758457/59562435-51317780-905f-11e9-930b-a66bc866ccf1.png)


Pls. provide [GitHub address] to reproduce this issue.

### Expected Result

What do you expected from the above steps？

### Actual Result

What actually happens?

If there is an exception, please attach the exception trace:

```
Just put your stack trace here!
```

/**
     * default time to live (second)
     */
    private static final int DEFAULT_TIME_TO_LIVE = 180;
    /**
     * default expire check interval (second)
     */
    private static final int DEFAULT_EXPIRATION_INTERVAL = 1;
    private static volatile int expireCount = 1;
    private final ConcurrentHashMap<K, ExpiryObject> delegateMap;
    private final ExpireThread expireThread;
    public ExpiringMap() {
        this(DEFAULT_TIME_TO_LIVE, DEFAULT_EXPIRATION_INTERVAL);
    }
    /**
     * Constructor
     *
     * @param timeToLive time to live (second)
     */
    public ExpiringMap(int timeToLive) {
        this(timeToLive, DEFAULT_EXPIRATION_INTERVAL);
    }
    public ExpiringMap(int timeToLive, int expirationInterval) {
        this(new ConcurrentHashMap<>(), timeToLive, expirationInterval);
    }
    private ExpiringMap(ConcurrentHashMap<K, ExpiryObject> delegateMap, int timeToLive, int expirationInterval) {
        this.delegateMap = delegateMap;
        this.expireThread = new ExpireThread();
        expireThread.setTimeToLive(timeToLive);