Thanks a lot Jeff. At least you cleared my doubt. 
   
  You mentioned that setting a socket non-blocking can be part of the strategy 
to use the phone as little as possible for data, leaving maximum amount of time 
for voice.
   
  How is that possible ? Is it by setting a timeout to a very small value ?
  


Jeff Loucks <[EMAIL PROTECTED]> wrote:
  The simple answer is, you cannot receive a phone call while actively
sending or receiving data.

The reason you don't receive your call is that the phone transfers
either data or voice, not both. When you have sent or received data,
the socket remains in data mode for a time before switching back to
voice. This is an optimization for data use. There are ways to shorten
the delay from data to voice, but there is always a time when incoming
phone calls will be sent directly to voicemail.

Setting a socket non-blocking means that a call to NetLib that would
otherwise wait for something to happen, will instead return
immediately with the error EWOULDBLOCK. It hasn't anything to do with
blocking phone calls.

However, setting a socket non-blocking can be part of the strategy to
use the phone as little as possible for data, leaving maximum amount
of time for voice.

On 6/25/07, Shruti Wadhwa wrote:
> Hello Everyone,
>
> I am transferring data with timeout set as 500 in NetLibSend function. If i
> am using timeout shorter than this then i gets netErrTimeout error.
>
> Now problem is that i am not able to get any phone call while the data is in
> transfer.
> I read a lot on this forum and came to know that setting socket to NON
> BLOCKING type will solve the problem.
>
> I, then used the function :
> NetLibSocketOptionSet(appNetRefT,appSocketRefT,netSocketOptLevelSocket,
> netSocketOptSockNonBlocking,&optValueB, 2, 100, &rc);
>
> But still it does not seems to solve the problem. It still blocks phone
> call, Moreover the netErrTimeout has started to come again.
>
> I am using following functions in the given sequence:
> NetLibOpen
>
> NetLibSocketOpen(appNetRefT, // Network library
>
> netSocketAddrINET, // Address domain
>
> netSocketTypeStream, // Socket type
>
> netSocketProtoIPTCP, // Protocol
> 300,
> // Timeout - 3 seconds
> &rc);
> NetLibSocketOptionSet
>
> NetLibSocketConnect
>
> NetLibSocketClose
>
> NetLibClose
>
> Can any one please tell me how can i get the phone call while transferring
> data ?
>
> Shruti !!
>
>
>
> ________________________________
> Get the free Yahoo! toolbar and rest assured with the added security of
> spyware protection. -- For information on using the ACCESS Developer Forums,
> or to unsubscribe, please see
> http://www.access-company.com/developers/forums/
>
>


-- 
[Jeff Loucks]

-- 
For information on using the ACCESS Developer Forums, or to unsubscribe, please 
see http://www.access-company.com/developers/forums/


       
---------------------------------
Be a better Heartthrob. Get better relationship answers from someone who knows.
Yahoo! Answers - Check it out. 
-- 
For information on using the ACCESS Developer Forums, or to unsubscribe, please 
see http://www.access-company.com/developers/forums/

Reply via email to