View Single Post
  #4   Spotlight this post!  
Unread 27-01-2016, 21:41
SamCarlberg's Avatar
SamCarlberg SamCarlberg is offline
GRIP, WPILib. 2084 alum
AKA: Sam Carlberg
no team
Team Role: Mentor
 
Join Date: Nov 2015
Rookie Year: 2009
Location: MA
Posts: 43
SamCarlberg is a splendid one to beholdSamCarlberg is a splendid one to beholdSamCarlberg is a splendid one to beholdSamCarlberg is a splendid one to beholdSamCarlberg is a splendid one to beholdSamCarlberg is a splendid one to beholdSamCarlberg is a splendid one to behold
Re: [Vision] Multithreading?

Something like this might work for you:

Code:
// Create a new Timer to schedule vision processing
Timer visionScheduler = new Timer("Vision Scheduler", true);

void doVisionProcessing() {
    // Your vision code here
}

public void autonomousInit() {
    ...
    // Perform vision processing every 50ms, starting in 0ms (i.e. now)
    visionScheduler.scheduleAtFixedRate(new TimerTask() {
            public void run() {
                doVisionProcessing();
            }
        }, 0, 50);
}
Keep in mind that you'll need to do the normal threading stuff like locks/synchronization blocks and declaring shared variables volatile, but that applies for any multithreaded program.
__________________
WPILib
GRIP, RobotBuilder
Reply With Quote