<!-- If you need to report a security issue please visit https://github.com/apache/dubbo/security/policy -->

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

### Environment

* Dubbo version: 3.0.12 3.1.8
* Java version: 1.8

### Steps to reproduce this issue

1. consumer及provider 通过环境变量，设置参数 future.sync.set=false
2. provider返回的报文较大
3. 3.0.12版本的调用，dubbo协议不会产生频繁GC问题，triple会产生
4. 3.1.8版本调用，dubbo协议及triple协议都会产生频繁GC问题

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

### Expected Behavior
Consumer通过dubbo或triple请求，设置了future.sync.set=false  不会在IntenalThreadLocal中保存返回结果，不再产生频繁GC问题

<!-- What do you expect from the above steps？-->

### Actual Behavior
统一设置了参数 future.sync.set=false
**3.0.12版本:**

> Dubbo协议调用 

及时清除了FutureContext，生效原因
<img width="1135" alt="image" src="https://github.com/apache/dubbo/assets/33999699/cca05d9d-dacd-4cf9-95d9-a72f9e20533d">
并在之后响应过程中清除了FutureContext
<img width="1088" alt="image" src="https://github.com/apache/dubbo/assets/33999699/c63dff14-6814-41ac-8ad2-d35968f4cd8a">
且因参数future.sync.set=false 之后也不再设置FutureContext，从而能够解决频发GC的情况

> Tiple协议调用
 
Tiple未及时清除了FutureContext原因
<img width="1027" alt="image" src="https://github.com/apache/dubbo/assets/33999699/2a71560a-2053-4d9e-8f88-07e976e7c713">
且没有在接收到响应后清除InternalThreadLocal
虽参数future.sync.set=false，但已经将FutureContext设置进了InternalThreadLocal，会造成频繁GC的情况
**3.1.8版本:**
Dubbo协议、Triple协议都没有及时清除FutureContext

> Dubbo协议调用 

<img width="1147" alt="image" src="https://github.com/apache/dubbo/assets/33999699/6b170820-1088-423f-8634-563944f6b00b">

> Tiple协议调用 

Triple未清除原因 同3.0.12
<!-- What actually happens? -->


return true;
            }
        }
        return false;
    }
    @Override
    public void destroy() {
        
        
        
        if (!super.isDestroyed()) {
            
            destroyLock.lock();
            try {
                if (super.isDestroyed()) {
                    return;
                }
                super.destroy();
                if (invokers != null) {
                    invokers.remove(this);
                }
                clientsProvider.close(serverShutdownTimeout);
            } finally {
                destroyLock.unlock();
            }
        }
    }
}