It seems difficult to design a threading package in OO class than in functional programming.
Do you have a specific question? You have asked an extremely similar question here, and I would call this one a duplicate. You can look at the design and answers in that thread to give you an idea.
But we cannot help you until you ask a specific question.