problems to upload sketch to arduino mega 2560

hi everyone, I have a problem to upload my sketch on my arduino mega 2560. my sketch uses a serial comunication using serial port 0 and 1, when i'm trying to upload the sketch to my board, the IDE shows a message: upload to I/O, this operation might take a few seconds, but in my case, this takes several hours, later the IDE shows this message

avrdude: stk500_2_ReceiveMessage(): timeout
avrdude: stk500_2_ReceiveMessage(): timeout
avrdude: stk500_2_ReceiveMessage(): timeout
.
.
.
avrdude: stk500_2_ReceiveMessage(): timeout
avrdude: stk500_2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
avrdude: stk500_2_ReceiveMessage(): timeout
avrdude: stk500_2_ReceiveMessage(): timeout

.
.
.

if anybody can help me, it be would appreciate it. thanks

Next time google "STUFF THAT YOU WANNA BUY PROBLEMS"
because there are tons of problems with mega (if you google it)
It will save you some $$$, trust me...

try to choose a different programmer in arduino application.
This was the problem for me, with the default programmer, because it don't reset the AVR.
I use now USBasp, and works fine