Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cancellation support and timeouts for symbol servers #4

Closed
jazzdelightsme opened this issue Sep 22, 2015 · 4 comments
Closed

Cancellation support and timeouts for symbol servers #4

jazzdelightsme opened this issue Sep 22, 2015 · 4 comments
Assignees

Comments

@jazzdelightsme
Copy link
Member

Waiting for network timeouts can be a major bummer. It would be great if we could:

  1. Add overloads that take System.Threading.CancellationTokens.
  2. Add support for configurable timeouts (shorter than network timeout by default?).
  3. Async support would be icing on the cake.

Some comments from Lee:

In addition to cancellation support, we also need to have a timeout for SymbolLocator. I’m not sure if it should be an individual timeout (for slow individual servers) or a global timeout when calling FindBinary/FindPdb (such that after N seconds the operation is cancelled) or both. Keep in mind that calling virtually any function in ClrMD may go out to the symbol server to download files if we are missing metadata that we need to perform an operation.

Also it’d be really nice if ClrMD could support some modern features like async/await…especially for symbol servers.

@leculver leculver self-assigned this Sep 22, 2015
@leculver
Copy link
Contributor

I have implemented async/await additions to ClrMD, along with adding a timeout to SymbolLocator. Unfortunately HttpWebRequest does not accept cancellation tokens, so I'm not sure there's an easy way to use one here.

@zodiacon
Copy link

You could use HttpClient instead - it's all async.

@leculver
Copy link
Contributor

Good point. I won't be able to get to it until next week, but I'll add CancellationToken support to the todo list.

@leculver leculver reopened this Sep 24, 2015
@leculver leculver added this to the September 2015 Sprint milestone Sep 24, 2015
jack-pappas added a commit to jack-pappas/clrmd that referenced this issue Dec 3, 2016
unless the server responds with a 200 OK. Modified the
``GetPhysicalFileFromServerAsync`` method to use HttpClient instead of
HttpRequest to leverage it's better async support (see microsoft#4).
@leculver
Copy link
Contributor

Hello! This issue is being closed due to its age. The codebase has moved significantly since this was filed. Please feel free to open a new issue for ClrMD about this issue if it still reproduces on ClrMD 1.0. (Also, I apologize for having not looked at or resolved this earlier and for resolving it now. In order for me to be able to make some progress on the growing issue count in ClrMD I need to clear the backlog down to a manageable set of issues, but do feel free to file a new one if this is still a problem.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants