push and forward thread loop