public GyroUpdater(Bno055 sensor) {
            //assign our sensor and create our data. This only happens once.
            _sensor = sensor;
            _gyroData = new GyroData();

            //create our work item!
            _workItem = new WorkItem(UpdateGyro, true, FlightEventType.Gyro, _gyroData);
        }
 //Manages the execution of a WorkItem that needs to be run.
 public void Execute(WorkItem workItem)
 {
     ThreadPool.QueueWorkItem(workItem);
 }