Hi,
I've never heard of the word "corrupted" appearing in readout messages...
And to tell you the truth, I am totally clueless as to why this happens when
you run the code on a separate thread. Are your "other" threads heavy?

Your last recommendation makes sense.

2009/8/5 yul goon <[email protected]>

> Hi,
> Thanx for your fast reply.
>
> Nope I didn't touch the modem at all, it's just that the text in the
> messages will not appear. The inbound message notification will be triggered
> as usual, but the SMS will have the word 'corrupted'  in the phone's inbox
> instead of its original text. Nothing like this happens if I simply runs
> this code without a thread like this;
>  ReadMessages sms = new ReadMessages();
>       try
>        {
>           sms.doIt();
>        } catch (Exception ex)
>        {
>         System.out.println("SMS Server failed to start : " + ex);
>            System.exit(-1);
>        }
>
> and yes, I only intended the SMS server to run for a single thread
> execution and not invoke any other thread calling this function.
> I just basically wants it the gsm modem to detects any incoming messages
> while other tasks are doing their jobs (i.e sensor value reading task)
>
> so u think I should take out this part and put it on a thread for this
> purpose?
>
> msgList = new ArrayList<InboundMessage>();
>             this.srv.readMessages(msgList, MessageClasses.ALL);
>             for (InboundMessage msg : msgList)
>                 System.out.println(msg);
>
> Cheers!
> vash
>
> On Tue, Aug 4, 2009 at 8:42 PM, Thanasis <[email protected]> wrote:
>
>> Hi,
>>
>> Hmm... I don't really get this...
>>
>> You are referring to corrupted messages - could you explain? Do you mean
>> that your modem gets disconnected or that messages are corrupted (i.e. wrong
>> text, etc)?
>>
>> Your example will run fine for a single thread execution, BUT its not
>> efficient at all. During each thread invocation, you will start and stop the
>> main Service class, which takes time. Start the Service object once and run
>> the readMessages() method in a thread.
>>
>> 2009/8/4 vash1282 <[email protected]>
>>
>>
>>> Hi Mr Thanasis,
>>> This might be a trivial question to you, but I'd appreciate some
>>> pointers regardless.
>>>
>>> Is it possible for SMS lib classes to run simultaneously along other
>>> tasks in java by assigning it to a thread? Everytime I use this code,
>>> the sms I sent to the gsm modem will become corrupted most of the
>>> time, and when it is not corrupted, the automated reply will not be
>>> sent out from the gsm modem.
>>> however, when I take out the threads .. it runs fine on its own, but I
>>> need it to be running simultatneously with another thread.
>>>
>>> this is how I assigned the class to a thread in my main function; runs
>>> fine except that 50% of the incoming SMSs will be corrupted.. if
>>> there's any other way to do it pls advise..
>>> Cheers!
>>>
>>> ======================================================
>>>
>>> Thread r = new Thread(){
>>> public void run()
>>> {
>>>  ReadMessages sms = new ReadMessages();
>>>       try
>>>        {
>>>           sms.doIt();
>>>        } catch (Exception ex)
>>>        {
>>>         System.out.println("SMS Server failed to start : " + ex);
>>>            System.exit(-1);
>>>        }
>>> }
>>> };
>>> r.start();
>>>
>>>
>>
>>
>>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"SMSLib User Group" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/SMSLib?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to