title: Can two threads read from the same QList at the same time?
body: <p>Pretty new to threading and I have this QList that the threads share between them. They all have their own space that they can work on, and the GUI (the model/view) access this list constantly. I then get this crash which points to QDataList.size(). The debugging doesn't really help me since I never come across this issue if I step through the code and when I'm trying to what qList that's crashing, there's no info available. </p>
  
  <p>So, my question is: Is it possible to get the Qlists size and read objects at the same time? The objects in the list are thread safe and cant be read/write by different threads at the same time. </p>
  
  <p>Getting "0xC0000005: Access violation reading location 0xfeeefefa." which points me to:
  inline int size() const in qlist.h</p>
  
  <p>I walk through the call stack and found this:</p>
  
  <pre><code>QtCored4.dll!QListData::size()  Line 98 + 0x11 bytes    C++
  QtNetworkd4.dll!QList&lt;enum QNetworkReplyImplPrivate::InternalNotifications&gt;::size()  Line 137 + 0x10 bytes  C++
  QtNetworkd4.dll!QNetworkReplyImplPrivate::resumeNotificationHandling()  Line 444 + 0xe bytes    C++
  QtNetworkd4.dll!QNetworkReplyImplPrivate::finished()  Line 797  C++
  QtNetworkd4.dll!QNetworkAccessBackend::finished()  Line 313 C++
  QtNetworkd4.dll!QNetworkAccessHttpBackend::replyFinished()  Line 739    C++
  QtNetworkd4.dll!QNetworkAccessHttpBackend::qt_static_metacall(QObject * _o, QMetaObject::Call _c, int _id, void * * _a)  Line 86 + 0x8 bytes    C++
  QtCored4.dll!QMetaCallEvent::placeMetaCall(QObject * object)  Line 525 + 0x1d bytes C++
  QtCored4.dll!QObject::event(QEvent * e)  Line 1195 + 0x14 bytes C++
  QtGuid4.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e)  Line 4550 + 0x11 bytes  C++
  QtGuid4.dll!QApplication::notify(QObject * receiver, QEvent * e)  Line 3932 + 0x10 bytes    C++
  QtCored4.dll!QCoreApplication::notifyInternal(QObject * receiver, QEvent * event)  Line 876 + 0x15 bytes    C++
  QtCored4.dll!QCoreApplication::sendEvent(QObject * receiver, QEvent * event)  Line 231 + 0x39 bytes C++
  QtCored4.dll!QCoreApplicationPrivate::sendPostedEvents(QObject * receiver, int event_type, QThreadData * data)  Line 1500 + 0xd bytes   C++
  QtCored4.dll!qt_internal_proc(HWND__ * hwnd, unsigned int message, unsigned int wp, long lp)  Line 496 + 0x10 bytes C++
  </code></pre>
  
  <p>Every thread is having a network manager that does a networkRequest:</p>
  
  <p><a href="https://stackoverflow.com/questions/9458664/qthread-assert-failure-in-qmutexlocker-qmutex-pointer-is-misaligned#comment11968392_9458664">QThread ASSERT failure in QMutexLocker: &quot;QMutex pointer is misaligned&quot;,</a></p>