Read PWM Signal from a RC-Receiver

I have a similar question.. I'm trying to read PWM from a 6 channel RC receiver.It looks as though I can get away with two pulsin calls in the Loop, but not more.. the following snippet works great.. but if I go to 3 or more pulsin calls, the code after the pulsin's never gets executed.. I assume the timing loops on the pulsins are too long.

eg.

#include "WProgram.h"
void setup();
void loop();
int ch1 = 2;
int ch2 = 3;
int ch3 = 4;
unsigned long ch1v;
unsigned long ch2v;
unsigned long ch3v;

void setup()
{
pinMode(ch1, INPUT);
pinMode(ch2, INPUT);
pinMode(ch3, INPUT);
Serial.begin(9600); // open the serial port at 9600 bps:

}

void loop()
{
ch1v = pulseIn(ch1, HIGH);
ch2v = pulseIn(ch2, HIGH);
ch3v = pulseIn(ch3, HIGH);

(... code here never gets executed ... (but does if you comment out the previous line)
}

I've seen solutions in this forum that take the raw RC data from the receiver and separate out the individual channel pulses directly.. but unfortunately, my receiver doesn't give me access to the raw data.. only the 6 individual channels.

So.. my question.. is there any way I can do my own pulsein code so that I could read at least four channels with one arduino ?
Any help/thoughts appreciated
-jc