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
Comments (2)
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
- VFX Graph Documentation dropdown button does nothing when clicked on the right side
- Required SpriteMask class (ID 331) is stripped when "Strip Engine Code" is enabled
- “Maximized serialized file backup not found” error is thrown when minimizing a window in a newly opened project
- Build stack trace contains invalid lines when building with IL2CPP using scripts with delegates containing generic types in the signature
- Entities Systems window has a “Show Full Player Loop” dropdown which does nothing when clicked after enabling “Show Full Player Loop”
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.