This project aims to investigate and develop a multi-thread scheduler for object-oriented computing. To achieve efficient resource utilization, Mesa-style semantics monitor and light-weight dispatcher are introduced to simplify the synchronization system and reduce the software context switching overhead. Besides, priority rearrangement algorithm and thread termination callback mechanism are developed for indefinite postpones prevention. To ensure the thread synchronization fairness and load-balancing, a preemptive time-slicing scheduling policy is adapted to cooperate with a software-based timer and interrupt emulator. Measurements show that the context switching time is limited to less than 1% of turnaround time with absences of starvation. Results also indicate that the scheduler achieves a good tradeoff between the fairness and throughput for most workloads. The new scheduler also provides a secure environment for protecting the system from malicious kernel access. In addition, the modularity and clean interfaces of the multi-thread scheduler simulator provides a flexible and reusable environment for system analyzing and debugging, so as to cope with future changes.