想了解在System.Net.UnsafeNclNativeMethods.OSSOCK.recv中的ThreadAbortException的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于
想了解在System.Net.UnsafeNclNativeMethods.OSSOCK.recv中的ThreadAbortException的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于在sys.utl_file line536的相关问题,此外,我们还将为您介绍关于.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.、.Net Core System.NullReferenceException 中的 Api、.net – 在mscorlib.dll中发生类型“System.Threading.ThreadAbortException”的第一次机会异常、.net – 未捕获System.Reflection.TargetInvocationException的新知识。
本文目录一览:- 在System.Net.UnsafeNclNativeMethods.OSSOCK.recv中的ThreadAbortException(在sys.utl_file line536)
- .MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.
- .Net Core System.NullReferenceException 中的 Api
- .net – 在mscorlib.dll中发生类型“System.Threading.ThreadAbortException”的第一次机会异常
- .net – 未捕获System.Reflection.TargetInvocationException
在System.Net.UnsafeNclNativeMethods.OSSOCK.recv中的ThreadAbortException(在sys.utl_file line536)
突然间,这个exception开始发生在我的程序中。 任何想法,可能是什么原因?
运行在.NET 4.0上
at System.Net.UnsafeNclNativeMethods.OSSOCK.recv(IntPtr socketHandle,Byte* pinnedBuffer,Int32 len,SocketFlags socketFlags) at System.Net.sockets.socket.Receive(Byte[] buffer,Int32 offset,Int32 size,SocketFlags socketFlags,SocketError& errorCode) at System.Net.sockets.NetworkStream.Read(Byte[] buffer,Int32 size) at System.Net.PooledStream.Read(Byte[] buffer,Int32 size) at System.Net.Connection.SyncRead(HttpWebRequest request,Boolean userRetrievedStream,Boolean probeRead) at System.Net.ConnectStream.ProcessWriteCallDone(ConnectionReturnResult returnResult) at System.Net.HttpWebRequest.GetResponse() at System.Net.WebClient.GetWebResponse(WebRequest request) at System.Net.WebClient.DownloadBits(WebRequest request,Stream writeStream,CompletionDelegate completionDelegate,A syncoperation asyncop) at System.Net.WebClient.UploadValues(Uri address,String method,NameValueCollection data)
如何将Windows服务从本地PC移动到虚拟专用服务器上
如何devise一个单一的窗口多个视图的桌面与WPF?
如何在.NET中实现精细的字体缩放?
我怎样才能知道我创build的文件是在当前用户的login会话中创build的?
Linux单声道等效的.NET Windows服务
程序的内部深处有一个Thread.Abort()调用。 这是原因。
.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920) at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2385) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2306) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) at sun.reflect.GeneratedConstructorAccessor4.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:443) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:141) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:111) at cn.qjj.mysql.MySQLPool.getNewConnection(MySQLPool.java:72) at cn.qjj.mysql.MySQLPool.init(MySQLPool.java:63) at cn.qjj.mysql.MySQLPool.<init>(MySQLPool.java:32) at cn.qjj.mysql.MySQLPool.getInstance(MySQLPool.java:39) at cn.qjj.mysql.SqlUtils.<clinit>(SqlUtils.java:33) at cn.qjj.solr.MsgUtil.main(MsgUtil.java:31) Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections" at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1112) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2483) at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2324) ... 18 more java.lang.NullPointerException at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011) at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006) at cn.qjj.mysql.MySQLPool.init(MySQLPool.java:63) at cn.qjj.mysql.MySQLPool.<init>(MySQLPool.java:32) at cn.qjj.mysql.MySQLPool.getInstance(MySQLPool.java:39) at cn.qjj.mysql.SqlUtils.<clinit>(SqlUtils.java:33) at cn.qjj.solr.MsgUtil.main(MsgUtil.java:31)
.Net Core System.NullReferenceException 中的 Api
如何解决.Net Core System.NullReferenceException 中的 Api?
我刚刚开始学习 Api''s 并开始构建一个简单的。 我构建了这个 EmployeeController:
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
namespace ApiHandsOn1.Controllers
{
[Route("api/Employee")]
[ApiController]
public class EmployeeController : Controller
{
List<Employee> _employeeList = new List<Employee>()
{
new Employee()
{
Id=1,Name= "abc def",Salary=20000,Permanent= true,//Department= { Id = 1,Name = "Payroll"},Skills ={new Skill{ Id= 1,Value= "HTML"},new Skill{ Id= 2,Value="CSS"},new Skill{ Id= 1,Value= "JS"} },DateOfBirth = new DateTime(01/03/2002)
},new Employee()
{
Id=2,Name= "ghi jkl",Salary=25000,Permanent= false,//Department= { Id = 2,Name = "HR"},DateOfBirth = new DateTime(15/08/2005)
}
};
public EmployeeController()
{
}
private List<Employee> GetStandardEmployeeList()
{
return _employeeList;
}
// GET: EmployeeController
[HttpGet]
[Route("GetEmployees")]
[ProducesResponseType(StatusCodes.Status200OK)]
public List<Employee> GetStandard()
{
List<Employee> empList=GetStandardEmployeeList();
return empList;
}
}
}
我已经为各个类构建了模型。 但是当我在 Swagger 上点击执行时,它会抛出一个异常(在 _employeeList):
System.NullReferenceException: ''未将对象引用设置为对象的实例。''
我错过了什么?
解决方法
您需要像这样初始化 Skills
属性:
Skills = new List<Skill>(){new Skill{},new Skill{}}
正如@smoksnes 提到的,你应该把你的值放在 DateTime
初始化中的文字之间
.net – 在mscorlib.dll中发生类型“System.Threading.ThreadAbortException”的第一次机会异常
但是当我尝试调试应用程序时,会给我任何错误 –
mscorlib.dll中出现了“System.Threading.ThreadAbortException”类型的第一个机会异常
它不会在任何特定的代码行错误。它给出任何代码行(不确定)..然后网页显示 – “服务器应用程序不可用”错误的错误。
即使我试图在即时窗口/快速观察中解析/执行一些声明 – 它给我上面的错误..
例如,我在XElement中加载了一个xml文档(超过10000行),当我尝试通过xpath检查一些属性值为XElementObj.XPathSelectElement(“/ asdf / asd / wqer / xyz”)..它给出了上面的错误(不是所有的时间,而是随机)。
任何人有任何想法这个..请帮助。
If you want to pinpoint where the
exceptions are occurring,you can
select the Debug->Exceptions menu
item,and in the dialog that appears,
check the first checkBox for “Common
Language Runtime Exceptions”. This
will make the debugger break as soon
as an exception occurs instead of only
breaking on unhandled exceptions.This is also one reason why it is generally a bad idea to catch generic exceptions unless you are clearly logging the information caught.
.net – 未捕获System.Reflection.TargetInvocationException
注意:这是IDE的外部. The referenced question is NOT the same.
TL; DR
>无法获得堆栈跟踪
>无法获得内部异常
>不能使用调试器(第三方库的复制保护方案妨碍)
>对代码的任何更改都会阻止异常发生 – 意味着我无法添加日志记录以找出发生异常的位置
如何通过其他方式获取异常或获取所需信息?
详细描述:
我遇到的问题是在一个被反射调用的方法中发生的异常.异常本身实际上发生在被调用的方法中,但由于该方法是通过反射调用的,因此真正的异常包含在System.Reflection.TargetInvocationException中.没问题,只需捕获它并获取内部异常 – 除了System.Reflection.TargetInvocationException没有被捕获.我的程序崩溃,我得到一个转储以及Windows事件日志中的条目.
Windows事件日志不包含内部异常,也不包含转储.
我无法将调试器附加到程序中,因为外部库(需要进入反射调用)将无法运行 – 复制保护,您知道吗?
如果我将一个try / catch放入有问题的方法中,则不会发生异常 – 这很糟糕.原因并不固定,只是不再发生.
如果我将登录放入有问题的方法,则会发生同样的效果 – 不再发生异常.
我不能使用日志记录,我不能使用调试器,并且在我可以捕获异常并记录它的一个地方,异常不会被捕获.
我正在使用Visual Studio 2010和dotnet 4.0.
为了说清楚:当程序在Visual Studio之外运行时,try / catch不起作用,我无法在调试器中的Visual Studio内运行它,因为那时程序无法到达异常点发生.这不在IDE中.
消除反射不是一种选择(我只针对一种情况尝试过,异常就消失了.)
被调用的方法做了很多事情,但是把它分解成更小的方法并没有帮助 – 例外就消失了.
异常不会一直发生,只有当我执行某一系列步骤时 – 并且当它发生时,它总是在整个序列中第二次发生.
在我使用的序列中,该方法几乎同时由两个线程调用 – 输入一组特定的数据,这会导致报告的副本和另一个文档打印在两个单独的打印机上 – 每个打印机一个报告和文档.由于生成报告和打印文档可能需要一段时间,因此它们在后台的线程上完成,因此用户可以继续工作.
我怀疑线程正在踩着彼此的脚趾(正在进行大量的文件和数据库操作),但不知道实际发生了什么,我无法解决它.
下面的代码显示了通过反射调用的简化版本.
是否有人建议可能导致System.Reflection.TargetInvocationException未被捕获,或者可能是另一种捕获内部异常的方法?
Try Dim methode As System.Reflection.MethodInfo methode = GetType(AParticularClass).getmethod("OneOfManyMethods",Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Static) Dim resultobject As Object = methode.Invoke(nothing,Reflection.BindingFlags.InvokeMethod Or Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Static,nothing,New Object() {SomeBooleanVariable,SomeStringVariable},nothing) result = DirectCast(resultobject,DataSet) Catch ex As Exception 'Log the error here. End Try
实际的异常是AccessViolationException,如果不采取特殊步骤(How to handle AccessViolationException.),则无法在dotnet 4.0中捕获
为了使事情变得更有趣,当在反射调用的方法中抛出AccessViolationException时,只会在Windows事件日志中记录TargetInvocationException,并且转储中只有TargetInvocationException可用.
一旦我设法获得真正的异常,我发现它是从导致AccessViolation的非GUI线程调用Application.DoEvents().在GUI-Thread(Use of Application.DoEvents())上调用时,DoEvents()可以带来足够的乐趣,更不用说从后台线程调用了.
一旦修复,我发现我们的第三方库(具有复制保护的库)不喜欢在不同的实例中同时调用.修复这是一个在正确的地方合并的问题.
导致所有这些乐趣的代码一次都在GUI-Thread中,并且最初是在dotnet 1.1的时代写回来的 – 这解释了对DoEvents的调用.代码已逐段转换为在后台线程中并行运行几个不同的阶段,没有一个开发人员对该过程有完整的概述.
今天关于在System.Net.UnsafeNclNativeMethods.OSSOCK.recv中的ThreadAbortException和在sys.utl_file line536的分享就到这里,希望大家有所收获,若想了解更多关于.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.、.Net Core System.NullReferenceException 中的 Api、.net – 在mscorlib.dll中发生类型“System.Threading.ThreadAbortException”的第一次机会异常、.net – 未捕获System.Reflection.TargetInvocationException等相关知识,可以在本站进行查询。
本文标签: