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

Extend doc #595

Merged
merged 3 commits into from
Jun 3, 2024
Merged

Extend doc #595

merged 3 commits into from
Jun 3, 2024

Conversation

victimsnino
Copy link
Owner

No description provided.

Copy link
Contributor

github-actions bot commented Jun 2, 2024

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-gcc

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 304.16 ns 2.16 ns 2.16 ns 1.00
Subscribe empty callbacks to empty observable via pipe operator 308.09 ns 2.16 ns 2.16 ns 1.00

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 693.74 ns 0.31 ns 0.31 ns 0.99
from array of 1 - create + subscribe + current_thread 1050.96 ns 3.42 ns 3.42 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 2284.44 ns 124.52 ns 119.52 ns 1.04
defer from array of 1 - defer + create + subscribe + immediate 736.45 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 2124.64 ns 59.23 ns 59.82 ns 0.99
interval - interval + take(3) + subscribe + current_thread 2984.96 ns 32.42 ns 32.68 ns 0.99
from array of 1 - create + as_blocking + subscribe + new_thread 29297.35 ns 27434.79 ns 30827.38 ns 0.89
from array of 1000 - create + as_blocking + subscribe + new_thread 41581.50 ns 51140.71 ns 51856.45 ns 0.99
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 3566.97 ns 146.34 ns 149.93 ns 0.98

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1083.98 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 863.33 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1025.97 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 854.49 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1261.18 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+last()+subscribe 966.83 ns 0.31 ns 0.31 ns 1.01
immediate_just+take_last(1)+subscribe 1122.63 ns 18.23 ns 17.91 ns 1.02

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 262.63 ns 2.16 ns 2.16 ns 1.00
current_thread scheduler create worker + schedule 379.45 ns 5.56 ns 5.56 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 846.44 ns 55.91 ns 55.35 ns 1.01

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 858.25 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 913.71 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 2350.08 ns 164.21 ns 154.88 ns 1.06
immediate_just+buffer(2)+subscribe 1607.59 ns 13.90 ns 13.59 ns 1.02
immediate_just+window(2)+subscribe + subscsribe inner 2404.91 ns 1050.22 ns 1010.62 ns 1.04

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 861.34 ns - - 0.00
immediate_just+take_while(true)+subscribe 844.49 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 2029.79 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3423.52 ns 177.87 ns 174.70 ns 1.02
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3698.42 ns 173.08 ns 168.96 ns 1.02
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 149.30 ns 145.89 ns 1.02
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3540.01 ns 911.25 ns 917.72 ns 0.99
immediate_just(1) + zip(immediate_just(2)) + subscribe 2132.68 ns 216.31 ns 206.50 ns 1.05

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 34.48 ns 16.84 ns 16.81 ns 1.00

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1364.70 ns 14.20 ns 14.19 ns 1.00
basic sample with immediate scheduler 1397.75 ns 5.56 ns 5.55 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 912.23 ns 0.31 ns 0.31 ns 1.00

Error Handling Operators

name rxcpp rpp prev rpp ratio
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 2042.61 ns 969.04 ns 966.97 ns 1.00

ci-macos

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 989.52 ns 3.89 ns 6.04 ns 0.64
Subscribe empty callbacks to empty observable via pipe operator 985.04 ns 3.88 ns 5.94 ns 0.65

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 1966.14 ns 0.23 ns 0.36 ns 0.65
from array of 1 - create + subscribe + current_thread 2456.36 ns 30.88 ns 46.08 ns 0.67
concat_as_source of just(1 immediate) create + subscribe 5369.07 ns 332.93 ns 748.66 ns 0.44
defer from array of 1 - defer + create + subscribe + immediate 1953.84 ns 0.23 ns 0.43 ns 0.54
interval - interval + take(3) + subscribe + immediate 4925.31 ns 115.51 ns 216.63 ns 0.53
interval - interval + take(3) + subscribe + current_thread 5976.77 ns 95.36 ns 173.11 ns 0.55
from array of 1 - create + as_blocking + subscribe + new_thread 81067.15 ns 76985.54 ns 134922.86 ns 0.57
from array of 1000 - create + as_blocking + subscribe + new_thread 87588.42 ns 86463.33 ns 156803.86 ns 0.55
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 8130.69 ns 373.33 ns 708.78 ns 0.53

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 2828.32 ns 0.23 ns 0.33 ns 0.71
immediate_just+filter(true)+subscribe 2046.89 ns 0.23 ns 0.30 ns 0.77
immediate_just(1,2)+skip(1)+subscribe 2661.90 ns 0.23 ns 0.31 ns 0.74
immediate_just(1,1,2)+distinct_until_changed()+subscribe 2062.58 ns 0.47 ns 0.62 ns 0.76
immediate_just(1,2)+first()+subscribe 3091.00 ns 0.23 ns 0.31 ns 0.75
immediate_just(1,2)+last()+subscribe 2318.86 ns 0.23 ns 0.32 ns 0.71
immediate_just+take_last(1)+subscribe 3009.92 ns 69.68 ns 99.54 ns 0.70

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 848.00 ns 4.14 ns 8.74 ns 0.47
current_thread scheduler create worker + schedule 1187.65 ns 37.27 ns 70.21 ns 0.53
current_thread scheduler create worker + schedule + recursive schedule 1986.51 ns 202.98 ns 301.47 ns 0.67

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 2097.60 ns 4.20 ns 6.28 ns 0.67
immediate_just+scan(10, std::plus)+subscribe 2322.31 ns 0.47 ns 0.69 ns 0.67
immediate_just+flat_map(immediate_just(v*2))+subscribe 5270.43 ns 415.96 ns 570.85 ns 0.73
immediate_just+buffer(2)+subscribe 2475.05 ns 69.14 ns 89.16 ns 0.78
immediate_just+window(2)+subscribe + subscsribe inner 5360.52 ns 2287.59 ns 2986.71 ns 0.77

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 2087.75 ns - - 0.00
immediate_just+take_while(true)+subscribe 2106.46 ns 0.23 ns 0.40 ns 0.58

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 4938.73 ns 4.90 ns 7.15 ns 0.68

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 7410.74 ns 439.12 ns 620.95 ns 0.71
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 8322.09 ns 442.15 ns 637.21 ns 0.69
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 468.11 ns 758.83 ns 0.62
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 7942.96 ns 1906.71 ns 3575.06 ns 0.53
immediate_just(1) + zip(immediate_just(2)) + subscribe 5094.72 ns 837.43 ns 1957.32 ns 0.43

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 72.02 ns 49.22 ns 68.64 ns 0.72

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 2721.52 ns 69.68 ns 96.25 ns 0.72
basic sample with immediate scheduler 2718.99 ns 18.31 ns 24.58 ns 0.74

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 2374.45 ns 0.23 ns 0.36 ns 0.64

Error Handling Operators

name rxcpp rpp prev rpp ratio
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 6534.75 ns 4062.42 ns 6463.09 ns 0.63

ci-ubuntu-clang

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 264.41 ns 1.54 ns 1.60 ns 0.97
Subscribe empty callbacks to empty observable via pipe operator 266.51 ns 1.54 ns 1.56 ns 0.99

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 565.13 ns 0.31 ns 0.31 ns 0.99
from array of 1 - create + subscribe + current_thread 791.54 ns 4.01 ns 4.01 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 2330.41 ns 134.48 ns 135.91 ns 0.99
defer from array of 1 - defer + create + subscribe + immediate 782.74 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 2216.40 ns 58.31 ns 58.31 ns 1.00
interval - interval + take(3) + subscribe + current_thread 2953.45 ns 30.88 ns 30.86 ns 1.00
from array of 1 - create + as_blocking + subscribe + new_thread 29393.08 ns 27139.63 ns 27479.21 ns 0.99
from array of 1000 - create + as_blocking + subscribe + new_thread 37675.35 ns 32050.06 ns 34248.83 ns 0.94
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 3656.51 ns 154.13 ns 158.43 ns 0.97

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1151.12 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 832.49 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1081.82 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 879.84 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1344.43 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+last()+subscribe 1000.34 ns 0.30 ns 0.31 ns 0.98
immediate_just+take_last(1)+subscribe 1186.42 ns 0.31 ns 0.31 ns 1.00

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 259.27 ns 1.43 ns 1.56 ns 0.91
current_thread scheduler create worker + schedule 365.12 ns 4.27 ns 4.32 ns 0.99
current_thread scheduler create worker + schedule + recursive schedule 852.22 ns 52.78 ns 59.68 ns 0.88

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 1324.06 ns 0.68 ns 0.31 ns 2.21
immediate_just+scan(10, std::plus)+subscribe 1476.49 ns 0.69 ns 0.31 ns 2.25
immediate_just+flat_map(immediate_just(v*2))+subscribe 3591.98 ns 214.15 ns 136.36 ns 1.57
immediate_just+buffer(2)+subscribe 2727.02 ns 25.59 ns 13.89 ns 1.84
immediate_just+window(2)+subscribe + subscsribe inner 3581.29 ns 1455.29 ns 885.84 ns 1.64

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 833.17 ns - - 0.00
immediate_just+take_while(true)+subscribe 1324.61 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 1959.34 ns 0.29 ns 0.31 ns 0.93

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3273.80 ns 159.01 ns 158.71 ns 1.00
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3635.73 ns 146.25 ns 149.03 ns 0.98
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 142.62 ns 148.95 ns 0.96
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3360.53 ns 847.62 ns 853.66 ns 0.99
immediate_just(1) + zip(immediate_just(2)) + subscribe 2176.55 ns 204.83 ns 203.92 ns 1.00

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 50.93 ns 17.23 ns 18.72 ns 0.92

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1239.39 ns 10.60 ns 11.43 ns 0.93
basic sample with immediate scheduler 1308.09 ns 5.86 ns 5.86 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 920.99 ns 0.29 ns 0.31 ns 0.93

Error Handling Operators

name rxcpp rpp prev rpp ratio
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 2006.58 ns 1157.94 ns 1235.59 ns 0.94

ci-windows

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 574.59 ns 4.01 ns 4.71 ns 0.85
Subscribe empty callbacks to empty observable via pipe operator 623.01 ns 4.02 ns 4.68 ns 0.86

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 1419.29 ns 5.24 ns 5.24 ns 1.00
from array of 1 - create + subscribe + current_thread 1543.84 ns 15.43 ns 15.43 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 4194.16 ns 180.39 ns 182.84 ns 0.99
defer from array of 1 - defer + create + subscribe + immediate 1219.08 ns 4.94 ns 4.93 ns 1.00
interval - interval + take(3) + subscribe + immediate 3111.23 ns 133.48 ns 134.12 ns 1.00
interval - interval + take(3) + subscribe + current_thread 3496.00 ns 52.57 ns 52.89 ns 0.99
from array of 1 - create + as_blocking + subscribe + new_thread 120270.00 ns 114060.00 ns 112680.00 ns 1.01
from array of 1000 - create + as_blocking + subscribe + new_thread 128500.00 ns 130075.00 ns 135200.00 ns 0.96
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 5514.74 ns 208.47 ns 207.80 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 2163.92 ns 12.87 ns 12.88 ns 1.00
immediate_just+filter(true)+subscribe 1337.01 ns 11.72 ns 12.39 ns 0.95
immediate_just(1,2)+skip(1)+subscribe 1768.88 ns 13.05 ns 13.16 ns 0.99
immediate_just(1,1,2)+distinct_until_changed()+subscribe 2025.39 ns 15.81 ns 18.71 ns 0.84
immediate_just(1,2)+first()+subscribe 2096.10 ns 12.63 ns 13.69 ns 0.92
immediate_just(1,2)+last()+subscribe 1813.65 ns 14.11 ns 13.79 ns 1.02
immediate_just+take_last(1)+subscribe 2351.15 ns 58.95 ns 58.93 ns 1.00

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 488.35 ns 6.18 ns 6.17 ns 1.00
current_thread scheduler create worker + schedule 666.29 ns 13.06 ns 13.23 ns 0.99
current_thread scheduler create worker + schedule + recursive schedule 1356.19 ns 103.31 ns 103.06 ns 1.00

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 1346.50 ns 11.11 ns 12.31 ns 0.90
immediate_just+scan(10, std::plus)+subscribe 1445.01 ns 21.28 ns 21.58 ns 0.99
immediate_just+flat_map(immediate_just(v*2))+subscribe 3710.60 ns 220.78 ns 218.81 ns 1.01
immediate_just+buffer(2)+subscribe 2328.80 ns 58.36 ns 57.47 ns 1.02
immediate_just+window(2)+subscribe + subscsribe inner 4075.10 ns 1255.65 ns 1257.16 ns 1.00

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 1343.91 ns 11.47 ns 11.45 ns 1.00
immediate_just+take_while(true)+subscribe 1360.67 ns 11.71 ns 12.38 ns 0.95

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 3239.20 ns 7.40 ns 7.40 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 5457.51 ns 247.37 ns 267.00 ns 0.93
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 5791.04 ns 241.65 ns 253.17 ns 0.95
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 223.01 ns 229.57 ns 0.97
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 5765.54 ns 948.87 ns 955.47 ns 0.99
immediate_just(1) + zip(immediate_just(2)) + subscribe 3723.40 ns 532.44 ns 536.82 ns 0.99

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 36.99 ns 26.82 ns 27.26 ns 0.98

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 2216.94 ns 58.80 ns 58.06 ns 1.01
basic sample with immediate scheduler 1906.86 ns 36.75 ns 36.95 ns 0.99

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 1487.92 ns 20.01 ns 19.98 ns 1.00

Error Handling Operators

name rxcpp rpp prev rpp ratio
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 1945.84 ns 340.26 ns 342.66 ns 0.99

Copy link

sonarqubecloud bot commented Jun 2, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues
4 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

@victimsnino victimsnino merged commit 2796fb8 into v2 Jun 3, 2024
35 checks passed
@victimsnino victimsnino deleted the docs branch June 3, 2024 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant