mirror of
				https://github.com/JKorf/CryptoExchange.Net
				synced 2025-10-31 02:17:45 +00:00 
			
		
		
		
	Fix for deadlocking socket receive
This commit is contained in:
		
							parent
							
								
									ac269e8368
								
							
						
					
					
						commit
						dadf62c280
					
				| @ -4039,148 +4039,5 @@ | |||||||
|         <member name="M:CryptoExchange.Net.Sockets.WebsocketFactory.CreateWebsocket(CryptoExchange.Net.Logging.Log,System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})"> |         <member name="M:CryptoExchange.Net.Sockets.WebsocketFactory.CreateWebsocket(CryptoExchange.Net.Logging.Log,System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})"> | ||||||
|             <inheritdoc /> |             <inheritdoc /> | ||||||
|         </member> |         </member> | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that <see langword="null"/> is allowed as an input even if the |  | ||||||
|                 corresponding type disallows it. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.AllowNullAttribute.#ctor"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute"/> class. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that <see langword="null"/> is disallowed as an input even if the |  | ||||||
|                 corresponding type allows it. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.DisallowNullAttribute.#ctor"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute"/> class. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that a method that will never return under any circumstance. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute.#ctor"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute"/> class. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that the method will not return if the associated <see cref="T:System.Boolean"/> |  | ||||||
|                 parameter is passed the specified value. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue"> |  | ||||||
|             <summary> |  | ||||||
|                 Gets the condition parameter value. |  | ||||||
|                 Code after the method is considered unreachable by diagnostics if the argument |  | ||||||
|                 to the associated parameter matches this value. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute"/> |  | ||||||
|                 class with the specified parameter value. |  | ||||||
|             </summary> |  | ||||||
|             <param name="parameterValue"> |  | ||||||
|                 The condition parameter value. |  | ||||||
|                 Code after the method is considered unreachable by diagnostics if the argument |  | ||||||
|                 to the associated parameter matches this value. |  | ||||||
|             </param> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that an output may be <see langword="null"/> even if the |  | ||||||
|                 corresponding type disallows it. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.MaybeNullAttribute.#ctor"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute"/> class. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"/>,  |  | ||||||
|                 the parameter may be <see langword="null"/> even if the corresponding type disallows it. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"> |  | ||||||
|             <summary> |  | ||||||
|                 Gets the return value condition. |  | ||||||
|                 If the method returns this value, the associated parameter may be <see langword="null"/>. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)"> |  | ||||||
|             <summary> |  | ||||||
|                  Initializes the attribute with the specified return value condition. |  | ||||||
|             </summary> |  | ||||||
|             <param name="returnValue"> |  | ||||||
|                 The return value condition. |  | ||||||
|                 If the method returns this value, the associated parameter may be <see langword="null"/>. |  | ||||||
|             </param> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that an output is not <see langword="null"/> even if the |  | ||||||
|                 corresponding type allows it. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.NotNullAttribute.#ctor"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.NotNullAttribute"/> class. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that the output will be non-<see langword="null"/> if the |  | ||||||
|                 named parameter is non-<see langword="null"/>. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName"> |  | ||||||
|             <summary> |  | ||||||
|                 Gets the associated parameter name. |  | ||||||
|                 The output will be non-<see langword="null"/> if the argument to the |  | ||||||
|                 parameter specified is non-<see langword="null"/>. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes the attribute with the associated parameter name. |  | ||||||
|             </summary> |  | ||||||
|             <param name="parameterName"> |  | ||||||
|                 The associated parameter name. |  | ||||||
|                 The output will be non-<see langword="null"/> if the argument to the |  | ||||||
|                 parameter specified is non-<see langword="null"/>. |  | ||||||
|             </param> |  | ||||||
|         </member> |  | ||||||
|         <member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute"> |  | ||||||
|             <summary> |  | ||||||
|                 Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"/>, |  | ||||||
|                 the parameter will not be <see langword="null"/> even if the corresponding type allows it. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"> |  | ||||||
|             <summary> |  | ||||||
|                 Gets the return value condition. |  | ||||||
|                 If the method returns this value, the associated parameter will not be <see langword="null"/>. |  | ||||||
|             </summary> |  | ||||||
|         </member> |  | ||||||
|         <member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)"> |  | ||||||
|             <summary> |  | ||||||
|                 Initializes the attribute with the specified return value condition. |  | ||||||
|             </summary> |  | ||||||
|             <param name="returnValue"> |  | ||||||
|                 The return value condition. |  | ||||||
|                 If the method returns this value, the associated parameter will not be <see langword="null"/>. |  | ||||||
|             </param> |  | ||||||
|         </member> |  | ||||||
|     </members> |     </members> | ||||||
| </doc> | </doc> | ||||||
|  | |||||||
| @ -44,7 +44,7 @@ namespace CryptoExchange.Net.Objects | |||||||
|                 } |                 } | ||||||
|                 else |                 else | ||||||
|                 { |                 { | ||||||
|                     var tcs = new TaskCompletionSource<bool>(); |                     var tcs = new TaskCompletionSource<bool>(TaskCreationOptions.RunContinuationsAsynchronously); | ||||||
|                     if(timeout != null) |                     if(timeout != null) | ||||||
|                     { |                     { | ||||||
|                         var cancellationSource = new CancellationTokenSource(timeout.Value); |                         var cancellationSource = new CancellationTokenSource(timeout.Value); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user