On a resource-sharing platform, running software subcomponents in isolation is critical to protect user's privacy and data security. In client-server applications, thread isolation is required to prevent private data that only belongs to certain threads from being read or modified by other unauthorized threads running in the same address space. However, the current programming languages (C/C++) and compilers do not provide such support for multi-threaded programs. In this paper, we propose HATI, a hardware assisted thread isolation approach. Different from software approaches, where both data access right setting and run-time monitoring of data objects access are embedded in applications and therefore result in significant dynamic memory usage and performance degradation, HATI leverages on-chip hardware modules to reduce the run-time validation time. It introduces much smaller memory overhead and very low performance degradation.