Lock-free scheduler with per-priority queues #193
Quality Gate failed
Failed conditions
6.0% Duplication on New Code (required ≤ 3%)
D Reliability Rating on New Code (required ≥ A)
D Maintainability Rating on New Code (required ≥ A)
See analysis details on SonarQube Cloud
Catch issues before they fail your Quality Gate with our IDE extension
SonarQube for IDE
Annotations
Check failure on line 51 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Do not throw uncaught exceptions in a destructor.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrA&open=AZ5suzDYg4kDix-tqUrA&pullRequest=193
Check warning on line 393 in src/Reactor.hpp
sonarqubecloud / SonarCloud Code Analysis
Declaration shadows a field "args" in the outer scope.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzEJg4kDix-tqUr9&open=AZ5suzEJg4kDix-tqUr9&pullRequest=193
Check failure on line 111 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrG&open=AZ5suzDYg4kDix-tqUrG&pullRequest=193
Check failure on line 209 in src/threading/scheduler/queue/TaskQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzCug4kDix-tqUqZ&open=AZ5suzCug4kDix-tqUqZ&pullRequest=193
Check failure on line 128 in src/extension/IOController_Posix.ipp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzD5g4kDix-tqUr2&open=AZ5suzD5g4kDix-tqUr2&pullRequest=193
Check failure on line 270 in src/extension/IOController_Posix.ipp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzD5g4kDix-tqUr7&open=AZ5suzD5g4kDix-tqUr7&pullRequest=193
Check failure on line 178 in src/threading/scheduler/queue/MPSCQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDIg4kDix-tqUq4&open=AZ5suzDIg4kDix-tqUq4&pullRequest=193
Check failure on line 204 in src/threading/scheduler/Pool.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ6MBkji_hgf2-2n6go7&open=AZ6MBkji_hgf2-2n6go7&pullRequest=193
Check failure on line 137 in src/threading/scheduler/Pool.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDhg4kDix-tqUri&open=AZ5suzDhg4kDix-tqUri&pullRequest=193
Check warning on line 202 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Refactor the code to remove this break statement.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrV&open=AZ5suzDYg4kDix-tqUrV&pullRequest=193
Check warning on line 110 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Reduce the number of nested "break" statements from 2 to 1 authorized.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrF&open=AZ5suzDYg4kDix-tqUrF&pullRequest=193
Check failure on line 112 in src/threading/scheduler/queue/TaskQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzCug4kDix-tqUqG&open=AZ5suzCug4kDix-tqUqG&pullRequest=193
Check failure on line 251 in src/threading/scheduler/queue/TaskQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzCug4kDix-tqUqk&open=AZ5suzCug4kDix-tqUqk&pullRequest=193
Check failure on line 310 in src/threading/scheduler/Pool.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ6MBkji_hgf2-2n6gpA&open=AZ6MBkji_hgf2-2n6gpA&pullRequest=193
Check failure on line 272 in src/extension/IOController_Posix.ipp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzD5g4kDix-tqUr8&open=AZ5suzD5g4kDix-tqUr8&pullRequest=193
Check failure on line 71 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrB&open=AZ5suzDYg4kDix-tqUrB&pullRequest=193
Check failure on line 209 in src/threading/scheduler/queue/MPSCQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Remove this destructor call.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDIg4kDix-tqUq8&open=AZ5suzDIg4kDix-tqUq8&pullRequest=193
Check failure on line 143 in src/threading/scheduler/queue/MPSCQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Replace the use of "new" with an operation that automatically manages the memory.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDIg4kDix-tqUqn&open=AZ5suzDIg4kDix-tqUqn&pullRequest=193
Check warning on line 245 in src/threading/scheduler/Pool.cpp
sonarqubecloud / SonarCloud Code Analysis
This function should be declared "const".
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDhg4kDix-tqUrm&open=AZ5suzDhg4kDix-tqUrm&pullRequest=193
Check warning on line 233 in src/threading/scheduler/queue/TaskQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Remove this continue statement.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzCug4kDix-tqUp8&open=AZ5suzCug4kDix-tqUp8&pullRequest=193
Check failure on line 176 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrN&open=AZ5suzDYg4kDix-tqUrN&pullRequest=193
Check failure on line 122 in src/threading/scheduler/queue/TaskQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzCug4kDix-tqUqJ&open=AZ5suzCug4kDix-tqUqJ&pullRequest=193
Check failure on line 96 in src/threading/scheduler/queue/TaskQueue.hpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzCug4kDix-tqUqF&open=AZ5suzCug4kDix-tqUqF&pullRequest=193
Check failure on line 212 in src/threading/scheduler/Scheduler.cpp
sonarqubecloud / SonarCloud Code Analysis
Use 'std::memory_order_seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDpg4kDix-tqUrz&open=AZ5suzDpg4kDix-tqUrz&pullRequest=193
Check warning on line 121 in src/threading/scheduler/Group.cpp
sonarqubecloud / SonarCloud Code Analysis
Refactor the code to remove this break statement.
See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClear&issues=AZ5suzDYg4kDix-tqUrJ&open=AZ5suzDYg4kDix-tqUrJ&pullRequest=193