DynamoDS/Dynamo — pull request #2465 by Benglin (2014-09-18 07:39:02+00:00)
Title: Disabled "heartbeatThread.Join" statement to avoid deadlock

Background
-----
This pull request fixes a deadlock that takes place while closing Dynamo in Revit. Here are the steps to reproduce the deadlock:

1. Start Revit, start Dynamo
2. Close Dynamo window
3. Start Dynamo
4. Close Dynamo window (deadlock)

Testing
-----
With the fix, I could repeat the above ```Step 3``` and ```Step 4``` for over 10 times without any issue. I have also verified that the call to ```GetStringRepOfWorkspaceSync``` actually completes with the data in ```outData```, and properly returns to the caller on a separate (heartbeat) thread. This means the following statement gets what it is supposed to get for logging purposes:

```cs
private void ExecThread()
{
while (true)
{
string workspace =
dynamoModel.CurrentWorkspace
.GetStringRepOfWorkspaceSync();

// We do get meaningful 'workspace' data here...
InstrumentationLogger.LogPiiInfo("Workspace", workspace);
}
}
```

Hi @lukechurch, please have a look, I'll merge this in to all other branches once this gets in.