Reverted commit D3156698
Reverted commit D3156698

Summary:There're currently two ways to set RequestContext
- RequestContext::create() - creates new context and sets it
- RequestContext::setContext(context) - sets context previously captured by saveContext
In most cases, the RequestContext is set back after the request is processed but sometimes it's not (especially with RequestContext::create). We want to measure cpu time for a request by measuring the total cpu time when a RequestContext is set, so we need to make sure that it's properly reset after the thread is done with the request. Scope guards can help us with that.

Reviewed By: haijunz

Differential Revision: D3156698

fb-gh-sync-id: 7c3eb06c1cc27849071625011bf64c5ad36c0612
fbshipit-source-id: 7c3eb06c1cc27849071625011bf64c5ad36c0612

rklabs/folly,floxard/folly,charsyam/folly,Orvid/folly,brunomorishita/folly,brunomorishita/folly,Orvid/folly,mqeizi/folly,Orvid/folly,facebook/folly,Orvid/folly,floxard/folly,brunomorishita/folly,rklabs/folly,mqeizi/folly,mqeizi/folly,brunomorishita/folly,rklabs/folly,charsyam/folly,facebook/folly,floxard/folly,facebook/folly,charsyam/folly,mqeizi/folly,floxard/folly,mqeizi/folly,brunomorishita/folly,floxard/folly,facebook/folly,facebook/folly,rklabs/folly,Orvid/folly,rklabs/folly,charsyam/folly