MCPcopy Create free account
hub / github.com/apache/trafficserver / destroy

Method destroy

src/proxy/http2/Http2ConnectionState.cc:1388–1433  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1386}
1387
1388void
1389Http2ConnectionState::destroy()
1390{
1391 if (in_destroy) {
1392 schedule_zombie_event();
1393 return;
1394 }
1395 in_destroy = true;
1396
1397 _cop.stop();
1398
1399 if (shutdown_cont_event) {
1400 shutdown_cont_event->cancel();
1401 shutdown_cont_event = nullptr;
1402 }
1403 cleanup_streams();
1404
1405 delete local_hpack_handle;
1406 local_hpack_handle = nullptr;
1407 delete peer_hpack_handle;
1408 peer_hpack_handle = nullptr;
1409 delete dependency_tree;
1410 dependency_tree = nullptr;
1411 this->session = nullptr;
1412
1413 if (fini_event) {
1414 fini_event->cancel();
1415 }
1416 if (zombie_event) {
1417 zombie_event->cancel();
1418 }
1419
1420 if (_priority_event) {
1421 _priority_event->cancel();
1422 }
1423
1424 if (_data_event) {
1425 _data_event->cancel();
1426 }
1427
1428 if (retransmit_event) {
1429 retransmit_event->cancel();
1430 }
1431 // release the mutex after the events are cancelled and sessions are destroyed.
1432 mutex = nullptr; // magic happens - assigning to nullptr frees the ProxyMutex
1433}
1434
1435void
1436Http2ConnectionState::rcv_frame(const Http2Frame *frame)

Callers 2

release_streamMethod · 0.45

Calls 2

stopMethod · 0.45
cancelMethod · 0.45

Tested by

no test coverage detected