render in thread