update, add a setvbuf example and some fix