Судя по всему, вы пытаетесь получить данные от потока до того, как он завершил расчёт, и судя по ошибке - даже до того, как он успел проинициализировать переменную m. Вам нужно, чтобы поток выставлял какой-то флаг (создайте в его классе булевскую переменную), который означает, что расчёт завершён. Далее в цикле опрашиваете потоки на предмет конца расчётов. Я ж так понимаю, это некая имитация параллельного программирования? Если так, то вам нужно все потоки опрашивать на предмет этих флагов и объединять данные, когда все будут готовы.