View Single Post
  #15   Spotlight this post!  
Unread 10-07-2015, 01:33
Peter Johnson Peter Johnson is offline
WPILib Developer
FRC #0294 (Beach Cities Robotics)
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2008
Location: Redondo Beach, CA
Posts: 248
Peter Johnson has much to be proud ofPeter Johnson has much to be proud ofPeter Johnson has much to be proud ofPeter Johnson has much to be proud ofPeter Johnson has much to be proud ofPeter Johnson has much to be proud ofPeter Johnson has much to be proud ofPeter Johnson has much to be proud of
Re: How do you use the WPILib?

Quote:
Originally Posted by virtuald View Post
Actually, we use NetworkTables extensively too -- I forget it's part of WPILib because we split it out from WPILib for the python implementation.

I'm pretty sure the Java/C++ implementations of NetworkTables have difficult to reproduce deadlock issues in them, which is something I wish they would fix.
I have good news for you (and others who've run into issues with NetworkTables). I'm currently rewriting the NetworkTables implementation core from the ground up as a portable C++ library (with C interfaces) to fix the deadlocks and improve performance. The plan for WPILib is to update both the C++ and Java higher level classes to use this core library (similar to how NetworkCommunication is used) for consistency across languages. It's currently TBD whether LabView will use this library or continue using a LabView-native implementation. And before anyone asks, yes, the new implementation will be extensively unit-tested (I'm expecting to have at least several hundred unit tests).

In addition to the implementation rewrite, we're revising the protocol (in a backwards-compatible way) to fix a number of issues (more consistent synchronization) and make the protocol in general a bit more robust. As part of this, we're also adding a few features, including integrated value persistence (think Preferences++), remote procedure calls, server reboot detection, and client self-identification.
__________________
Author of cscore - WPILib CameraServer for 2017+
Author of ntcore - WPILib NetworkTables for 2016+
Creator of RobotPy - Python for FRC

2010 FRC World Champions (294, 67, 177)
2007 FTC World Champions (30, 74, 23)
2001 FRC National Champions (71, 294, 125, 365, 279)