Comments (2)
To ensure this, there needs to be a separate recursive mutex that's used only for PIDWrite and Disable. You do not want to hold the main pidcontroller mutex over the PIDWrite call. Disable grabs the main pidcontroller mutex and the PIDWrite mutex, then clears the enabled flag. Calculate grabs in the same order, checks the enable flag, but releases only the pidcontroller mutex before calling PIDWrite, releasing the PIDWrite mutex only after that function has returned.
from allwpilib.
In addition to this, we could stop the Notifier when Disable() is called. Calculate() doesn't do anything unless the controller is enabled anyway.
from allwpilib.
Related Issues (20)
- Add 2D addressable LED display class
- Rotation2d(0,0) should be some sort of NaN HOT 19
- Synchronize C++ and Java versions of BooleanEvent HOT 1
- Trigger.onChange has no test HOT 3
- cmake build broken as of 2024.1.1 HOT 11
- WPIMath JNI classes should use single runtime loader
- .type NT topics do not always set the SmartDashboard property
- Move apriltag into the monorepo via upstream_utils HOT 2
- Move imgui into the monorepo via upstream_utils HOT 1
- Move libssh into the monorepo via upstream_utils HOT 1
- Move GoogleTest into the monorepo via upstream_utils HOT 2
- Move libssh into the monorepo via upstream_utils HOT 1
- Add upstream_utils commands for bumping a tag and exporting patches HOT 1
- AHRS crashes on startup due to RuntimeDetector removal HOT 11
- Offset LED patterns only offset writes, not reads
- #6767 drastically increases test times HOT 2
- Add compression option for WPILOGs HOT 2
- HALSimWS sends 1 and 0 instead of true and false for `SimBoolean`s
- "Can't load AMD 64-bit .dll on a IA 32-bit platform" HOT 4
- `SimDeviceSim.resetData()` Disables `SimDevice` Messages on Open WebSockets Connections
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from allwpilib.