1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2026-01-03 07:45:29 -05:00

settings for mux concurrency

This commit is contained in:
Darien Raymond
2017-04-12 10:40:21 +02:00
parent f2f1ad8d6b
commit c89cd8ae24
6 changed files with 99 additions and 83 deletions

View File

@@ -62,13 +62,18 @@ func NewHandler(ctx context.Context, config *proxyman.OutboundHandlerConfig) (*H
}
if h.senderSettings != nil && h.senderSettings.MultiplexSettings != nil && h.senderSettings.MultiplexSettings.Enabled {
h.mux = mux.NewClientManager(proxyHandler, h)
config := h.senderSettings.MultiplexSettings
if config.Concurrency < 1 || config.Concurrency > 1024 {
return nil, newError("invalid mux concurrency: ", config.Concurrency)
}
h.mux = mux.NewClientManager(proxyHandler, h, config)
}
h.proxy = proxyHandler
return h, nil
}
// Dispatch implements proxy.Outbound.Dispatch.
func (h *Handler) Dispatch(ctx context.Context, outboundRay ray.OutboundRay) {
if h.mux != nil {
err := h.mux.Dispatch(ctx, outboundRay)