Search Issue Tracker
Fixed in 5.0.X
Votes
0
Found in
4.3.4f1
Issue ID
612251
Regression
No
ManualResetEvent fails if the mono debugger is attached
To reproduce:
1. Create a script:
using System.Threading;
using UnityEngine;
public class Test : MonoBehaviour
{
private ManualResetEvent m_ResetEvent;
void Start()
{
m_ResetEvent = new ManualResetEvent(false);
var thread = new Thread(WaitPlease);
thread.Start();
}
private void WaitPlease()
{
m_ResetEvent.WaitOne();
Debug.Log("How could I possibly be here?");
}
}
2. Attach the script to the camera
3. Enter/leave play mode - console is clean
4. Attach monodevelop debugger to Unity
5. Enter/leave play mode - notice that the console now has "How could I possibly be here?" - the ManualResetEvent did not work
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Search field in UI Builder's Library has no character limit
- Changing the value in UI Builder by dragging increases it by a few thousand points when reaching the borders of the screen
- ARM64 architecture DLL incorrectly copied instead of x64 when building for Windows x64
- Crash on TypeTreeIterator::GetNode when opening a specific folder
- Crash on WriteSerializedAssetsV2 when (re)entering the Play Mode in a specific project when IEnumerator Start() is used
CharlesWoodhill1
Aug 22, 2014 17:50
seems the debugger autosets all wait handles... (EventWaitHandle, Mutex, Sleep)
Synastry
Jul 28, 2014 04:40
This bug is also reproducible by calling IAsyncResult.AsyncWaitHandle.WaitOne method with an IAsyncResult instance returned by async I/O method like TcpClient.BeginConnect.
This bug let programmer cannot use connecting with timeout functionality while debugger is attached.
I really hope this issue to be released in near future release.