{
  "WorkItem": {
    "AffectedComponent": {
      "Name": "",
      "DisplayName": ""
    },
    "ClosedComment": "Added doc indicating that ZipFile is not thread safe.  This is included in changeset 27058.",
    "ClosedDate": "2008-12-18T16:50:35.92-08:00",
    "CommentCount": 0,
    "Custom": null,
    "Description": "Currently it is not thread safe!  And not documented as such either.",
    "LastUpdatedDate": "2013-05-16T05:32:44.2-07:00",
    "PlannedForRelease": "",
    "ReleaseVisibleToPublic": false,
    "Priority": {
      "Name": "Low",
      "Severity": 50,
      "Id": 1
    },
    "ProjectName": "DotNetZip",
    "ReportedDate": "2008-06-07T12:37:44.533-07:00",
    "Status": {
      "Name": "Closed",
      "Id": 4
    },
    "ReasonClosed": {
      "Name": "Unassigned"
    },
    "Summary": "Make the Zip library thread safe",
    "Type": {
      "Name": "Feature",
      "Id": 1
    },
    "VoteCount": 1,
    "Id": 5182
  },
  "FileAttachments": [],
  "Comments": [
    {
      "Message": "I, for one, wouldn't expect it to be thread safe.  But a prominent note in the docs stating that instance methods are not thread safe would be appropriate.\r\n\r\nFWIW, Microsoft has gone back and forth on this issue at least a couple of times with their own container classes.  Like pretty much all of the other classes in the BCL, the original container classes (eg. ArrayList) are not thread safe.  However, they expose a Synchronized method that returns a thread safe wrapper.  That wrapper just adds a sync (SyncLock in VB) block around each of the instance methods.  When they invented the new and improved generic container classes (e.g. List(Of T)) they eliminated the Synchronized method.  I guess they figure that calling code can provide its own thread safety guarantees.",
      "PostedDate": "2008-07-04T09:41:05.897-07:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2008-09-16T14:48:46.203-07:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2008-12-18T16:50:35.92-08:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2013-02-21T18:44:47.903-08:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2013-05-16T05:32:44.2-07:00",
      "Id": -2147483648
    }
  ]
}