1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

SmartPtr: Support shared ptr for live source. v6.0.129 (#4089)

Detail change log:

1. [Simple,Refactor] Remove member fields of http entry, etc.
https://github.com/ossrs/srs/pull/4089/commits/e34b3d3aa44f56b49c5c0b8e58c0285c4d9094d4
2. [Ignore] Rename source to live_source.
https://github.com/ossrs/srs/pull/4089/commits/846f95ec96f183909070c4b3f5ef0e9dd7d5448d
3. [Ignore] Use directly ptr in consumer.
https://github.com/ossrs/srs/pull/4089/commits/d38af021ad532ed9b4043c529dd5e54b9cbf5c01
4. [Complex, Important] Use shared ptr for live source.
https://github.com/ossrs/srs/pull/4089/commits/88f922413a1fb5cb920ab64f8b3805420932602a

The object relationship:

![live-source](https://github.com/ossrs/srs/assets/2777660/1adb59af-6e7a-40f3-9a4a-1cc849d7dae1)

---

Co-authored-by: Jacob Su <suzp1984@gmail.com>
This commit is contained in:
Winlin 2024-06-15 07:54:56 +08:00 committed by GitHub
parent 908c2f2a30
commit e7069788e9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
30 changed files with 256 additions and 235 deletions

View file

@ -139,6 +139,17 @@ VOID TEST(CoreLogger, SharedPtrReset)
}
}
SrsSharedPtr<int> mock_create_from_ptr(SrsSharedPtr<int> p) {
return p;
}
VOID TEST(CoreLogger, SharedPtrContructor)
{
int* p = new int(100);
SrsSharedPtr<int> q = mock_create_from_ptr(p);
EXPECT_EQ(100, *q);
}
VOID TEST(CoreLogger, SharedPtrObject)
{
SrsSharedPtr<MyNormalObject> p(new MyNormalObject(100));