title: High memory usage when uploading and manipulating many files
body: <p>I am trying to use FineUploader to upload a large amount of files. I also need to manipulate the files before uploading them - namely I need to anonymize some identifying information. In <a href="https://stackoverflow.com/questions/24400415/alter-file-contents-before-uploading?rq=1">another answer</a>, Ray Nicholus suggested to reject the original file in the onSubmit handler and then re-add the manipulated file. So my onSubmit handler looks like so:</p>
  
  <pre><code>onSubmit: function (id, name)
  {
      var file = this.getFile(id)
      if (file.isAnonymized)
      {
          return;
      }
      var reader = new FileReader()
      reader.onload = function()
      {
          var arrayBuffer = this.result
          var byteArray = new Uint8Array(arrayBuffer)
          // Manipulate the byteArray in some way...
          var blob = new window.Blob([byteArray])
          blob.isAnonymized = true
          // add the anonymized file instead
          uploader.addFiles({blob: blob, name: name})
      }
      reader.readAsArrayBuffer(file)
      // cancel the original file
      return false
  },
  </code></pre>
  
  <p>This works fine for a small amount of files. In a concrete example, a customer tried to upload ~1.500 files of 3MB each in Firefox, and saw Firefox's memory usage spike through the roof before the tab eventually crashed. Other browsers (Chrome, Edge) exhibit similar behavior. Using the browser's developer tools doesn't seem to show any large memory allocations. There are no problems when simply uploading the files as-is, but that's not an option.</p>