Forum Discussion
Kirk_Jackson
May 01, 2018Nimbostratus
STREAM::expression and "thread safety"
Hi,
I don't think "thread safety" is the right term here, but kinda helps explain my question.
STREAM::expression can be changed in an iRule, and the documentation says it affects "this connectio...
Simon_Blakely
May 15, 2018Employee
HTTP/2 allows multiplexed requests.
The individual HTTP/2 requests in the TCP connection will be separated into Streams (based on Stream ID) at the HTTP_REQUEST and responses combined back into the connection at HTTP_RESPONSE.
Between those two events, each Stream is an individual Stream context, and items such as TCL variables and STREAM::expression only exist in that Stream context. You cannot access the Connection context from within the Stream context, so if you need to store a Connection variable for access from within the Stream context, it needs to be stored globally (i.e using table).
So from HTTP_REQUEST to HTTP_RESPONSE, STREAM:: is limited in scope to the Stream, and will not interfere with other request/responses.
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects