title: Java/Android: Synchronized vs Queue implementation
body: <p>Can I ask a rookie Java question?</p>
  
  <p>I am downloading some files from the web. This method download(url location) is called multiple times.</p>
  
  <pre><code>public static void download(final String url) {
      Thread t = new Thread("download") {
          @Override
          public void run() {
              try {
                  synchronized (object) {
                      // download &amp; save
                  }
              } catch(Exception e) {}
          }
      };
      t.start();
  }
  </code></pre>
  
  <p>I added "synchronized" so that downloads happens one-by-one. (not multiple downloads occur at the same time).<br>
  I am guessing even though download() is called multiple times, synchronized will block other threads until the first thread is finished.</p>
  
  <p>Will above code work? or do I have to implement Queue? and dequeue one-by-one?<br>
  Can synchronized block "enough" threads? (30? 50?) or does it have limits?</p>