I can generally go as long as I want. With sex and I just need to slow things down for a second if I'm about to explode...then I can keep going and just repeat the process.
Maybe you should stop taking Viagra. You know what they say if you go for 4 hours and get rushed to the emergency room. Lying on a stretcher in the hallway of a hospital under a tent with a hard on isn't my idea of a fun night.
With sex I can usually go 20-30 minutes depending on how horny I am and how long it's been. When wanking I can go for as long as I want, but generally around 15mins, things tend to get messy if I go any longer.