mardi 21 avril 2015

Array und Timer

Hallo!

Ich habe:
Java Code:

  1.  
  2. public ArrayList<ChannelValue> channelValueList = new ArrayList<ChannelValue>();
  3. public ChannelValue channelValue = new ChannelValue();
  4. private boolean timerRunning = false;
  5. private Timer timer = new Timer();
  6.  
  7.  
  8. public void onidata1(Event e) {
  9. timerCheck();
  10. channelValue.value[0] = e.getString("value", null);
  11.  
  12. if (sendImmediately) {
  13. oniTriggerSend();
  14. }
  15.  
  16.  
  17. private void timerCheck() {
  18. if (timerRunning == false) {
  19. timerRunning = true;
  20. timer.schedule(new TimerTask() {
  21. @Override
  22. public void run() {
  23. channelValueList.add(channelValue);
  24. int i = 0;
  25. for (i = 0; i < 10; i++) {
  26. channelValue.value[i] = null;
  27. }
  28. timerRunning = false;
  29. }
  30. }, 1000);
  31. }
  32. }
  33.  
  34.  
  35. public void oniTriggerSend() {
  36. int i = 0;
  37.  
  38. // commandString += "[";
  39. StringBuilder builder = new StringBuilder();
  40. builder.append(baseUrl);
  41. builder.append("/input/bulk.json?data=[");
  42. builder.append("[");
  43.  
  44. long timeStampNow = System.currentTimeMillis();
  45.  
  46. for (i = 0; i < <b>channelValueList</b>.size(); i++) {


Die Klasse:
Java Code:

  1. public class ChannelValue {
  2. public long timeStamp;
  3. public String[] value = new String[10];
  4. }


Es wird mir "channelValue" durch den Timer in das Arraylist rein gelegt, aber wenn ich die Methode oniTriggerSend() starte, sind alle Werte null.
in onidata1() wird der korrekte String in die Variable gelegt, aber scheinbar wenn die Variable in das Array gelegt wird, sind wieder alle null.


Array und Timer

0 commentaires:

Enregistrer un commentaire