Graphics.DrawTexture in OnGUI()

Hi, I keep reading in different places if I want to use Graphics.DrawTexture in OnGUI() etc then make sure the event is Repaint. I never read anywhere the alternative places to place this code…placing it in the Update method seems counter-intuitive so can someone tell me a place other than OnGUI?

Do it in OnGUI only when Event.current.type == EventType.Repaint