Multiple modems: Threads required?



I want to write a program that will use a modem. I was thinking
about designing it so that the user can use more than one modem
at once with only one instance of the application running. My
question is, would I need to use threads to do this? Can it be
done without using them?

Thanks

.