Some years ago I became a million mile flyer on United. The flight that put me over one million was from GVA to IAD. At the GVA airport I bought some fine Swiss chocolates for the crew as a thank you for all the service I had been given over the years. It was very well received and as others have commented upthread, individual crew members stopped by my seat to thank me throughout the remainder of the flight. I then was embarrassed to have the captain make an announcement over the PA about my milestone. This was in the days before United kept close track of such things in advance (now I understand you get an email letting you know you are about to cross a mileage threshold) so the crew only knew because I told them. Had I anticipated the captain's announcement I would have asked him not to do it, but nevertheless I was glad I decided to give the chocolates.
Bottom line: I wouldn't do it on every flight but once in a while or for a special occasion I think a modest gift is a fine idea.