Can you please clarify what you meant by :
" The host can not receive data without the event of the host(usb event). "
Do you mean to say that the GetBuffer() API does not return for you unless the host reads out the last committed buffer?
If that is the case, you could try to use multiple DMA buffers. Increase the buffer count in DMA config structure.