Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #2856
| Path | csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.albasani.net!news2.arglkargh.de!news.musoftware.de!wum.musoftware.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail |
|---|---|
| From | Dirk Bruere at NeoPax <dirk.bruere@gmail.com> |
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Threads and UI in Android |
| Date | Mon, 04 Apr 2011 23:41:52 +0100 |
| Organization | Dirk Bruere at Neopax |
| Lines | 73 |
| Message-ID | <8vuvpbFrt9U1@mid.individual.net> (permalink) |
| References | <8vrrsdF6urU1@mid.individual.net> <8vs005F5tmU1@mid.individual.net> <inark9$gr4$7@lust.ihug.co.nz> <inb4mo$2br$1@dont-email.me> <8vt2tjFcvhU1@mid.individual.net> <8vugc0F6boU1@mid.individual.net> <indelv$57i$1@dont-email.me> |
| Reply-To | dirk.bruere@gmail.com |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=ISO-8859-1; format=flowed |
| Content-Transfer-Encoding | 7bit |
| X-Trace | individual.net b33f1aEy4r76XROqefYnqwES8GKwb7oBhUPOKGe89df8IYwQZd |
| Cancel-Lock | sha1:F1MzYTX+BF8lhkr666kXplqDd40= |
| User-Agent | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 |
| In-Reply-To | <indelv$57i$1@dont-email.me> |
| Xref | x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:2856 |
Show key headers only | View raw
On 04/04/2011 22:54, markspace wrote:
> On 4/4/2011 11:18 AM, Dirk Bruere at NeoPax wrote:
>
>> Or not.
>> That BlinkAPI.updateIncomingData(packetStr) eventually gets to call this
>> from the Data class
>>
>> public static void setRadioTitleAdapterListView()
>> {
>
>
> I don't like the idea that you're suggesting here. Hard baking this
> method so it always runs on the UI thread sounds bad. You want to keep
> methods flexible so they can be used in a variety of contexts. Too much
> specialized behavior results in classes that require too many support
> classes or a specialized environment to function at all.
>
> Better to do it where you had it at first. You're already processing the
> packet and making a string. It seems fine to allow your Blink routine to
> process the resulting string on the UI thread. You don't have to be
> manic about removing every last cycle from the UI thread, just keep long
> tasks (like IO, or sorting or searching) away from it.
>
> Also, in the code you posted, you set up packetStr once outside of the
> loop, then never use that value, so I'm moving packetStr inside the loop
> and removing the unused assignment.
>
> And I think you mean !packetStr.equals( "" ), not packetStr != null. It
> isn't possible to get null from a constructor.
>
>
> public void run()
> {
> try
> {
> DatagramSocket ds = new DatagramSocket(Constants.LOCAL_PORT);
> DatagramPacket incoming = new DatagramPacket(
> receiveBuffer, receiveBuffer.length);
> incoming.setLength(length);
> // not used String packetStr=new String(receiveBuffer, "UTF-8");
>
> while(true) //Run this as an endless loop
> {
> ds.setReceiveBufferSize(receiveBuffer.length);
> ds.receive(incoming);
> final String packetStr = new String(receiveBuffer, 0,
> incoming.getLength(), "UTF-8");
> if( !packetStr.equals( "" ) ) {
> Activity.runOnUiThread( new Runnable() {
> public void run() {
> BlinkAPI.updateIncomingData(packetStr);
> }
> } );
> }
> } catch (IOException e1) {
> // you really must log errors if you find them
> // honestly, you'll be happy you did.
> }
> }
> }
>
> At least we're doing things now that look like actual Java programming.
:-)
BTW, do you any kind of feel for how long it would take to load a
ListView (and adapter/array) with (say) 1000 items comprising about
100kB of data?
--
Dirk
http://www.neopax.com/technomage/ - My new book - Magick and Technology
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar
Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-03 19:16 +0100
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-03 20:27 +0100
Re: Threads and UI in Android Lawrence D'Oliveiro <ldo@geek-central.gen.new_zealand> - 2011-04-04 10:16 +1200
Re: Threads and UI in Android markspace <-@.> - 2011-04-03 17:51 -0700
Re: Threads and UI in Android "John B. Matthews" <nospam@nospam.invalid> - 2011-04-03 21:50 -0400
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-04 06:23 +0100
Re: Threads and UI in Android Lawrence D'Oliveiro <ldo@geek-central.gen.new_zealand> - 2011-04-04 18:48 +1200
Re: Threads and UI in Android markspace <-@.> - 2011-04-04 17:31 -0700
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-04 19:18 +0100
Re: Threads and UI in Android markspace <-@.> - 2011-04-04 14:54 -0700
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-04 23:41 +0100
Re: Threads and UI in Android markspace <-@.> - 2011-04-04 16:29 -0700
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-05 00:32 +0100
Re: Threads and UI in Android markspace <-@.> - 2011-04-04 17:27 -0700
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-05 01:30 +0100
Re: Threads and UI in Android Steve Sobol <sjsobol@JustThe.net> - 2011-04-04 18:53 -0700
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-05 03:19 +0100
Re: Threads and UI in Android Steve Sobol <sjsobol@JustThe.net> - 2011-04-04 23:04 -0700
Re: Threads and UI in Android Dirk Bruere at NeoPax <dirk.bruere@gmail.com> - 2011-04-05 08:04 +0100
Re: Threads and UI in Android markspace <-@.> - 2011-04-03 17:29 -0700
csiph-web