草庐IT

catching

全部标签

Python - tcp 套接字,创建一个 catch all 函数来接收数据

我正在尝试编写一个可以重复使用的函数来可靠地接收任何数量的tcp数据。请注意,这假设已经建立了连接-其中conn是我连接的套接字。到目前为止,我有以下内容:importsocketdefrecv_tcp_data(conn,byte_size):chunks=[]whileTrue:data=conn.recv(byte_size)ifdata:chunks.append(data)else:breakreturnchunksasresult上面代码的问题是我不想返回一个已经接收到的数据的列表。无论缓冲区的数量如何,我都想将其全部作为一个编码字符串返回,但我不知道如何将编码字符串的ch

C# try catch 使用

trycatch使用场景:1.一般在线程,委托中使用,在线程与委托中使用是因为,如果线程和委托中出现异常在程序外部是捕获不到的,需要在内部做单独处理。2. 程序的外层使用,比如程序的入口处加一个全局异常捕获,这样整个程序发生的异常都可以捕获到。3.在事件或者主体方法中使用,一些小的公共方法可以不使用,需要单独处理异常的除外。4.在一些调用比较多的公共方法里如果使用tryccatch最好将异常throw抛出去,又上层处理异常,这样在发现异常时可以知道是由那个方法调用的。5.很多时候程序部署到现场是没有源码可以调试的,这个时候就得需要通过分析日志来排查问题,trycatch大多会和logNet4结

html - 有没有办法 catch "Received an unexpected URL from the web process:"

我正在尝试使用WKWebView在Swift中使用UIWebView重写一个objective-c应用程序。该应用程序显示大量本地内容。虽然我可以毫无问题地在WKWebView中显示初始网页。当我单击指向更多本地内容的链接时,出现以下错误:从网络进程收到一个意外的URL:“...”内容使用非标准href来标识本地内容。使用UIWebViewshouldStartLoadWithRequestapi,我能够拦截这个点击链接并以我可以加载适当本地内容的方式重写href。到目前为止,我还不能在WKWebView中找到任何可以让我完成同样事情的东西。我正在使用这些内容,而不是创建它,所以我没有

Swift:如果 do return try 失败,则执行 catch

我正在编写一段代码,它将从CoreData中获取一组NSManagedObject。在我的代码中使用docatch语句时,这样做似乎不对,但这是我编写这行代码的最简单方法。在任何其他情况下,当您使用return语句时,您将跳出您所在的当前函数。并且您可以放心,您的函数中的其他代码都不会执行超过>return语句。我想知道这是否同样适用于Swift的docatch范式。classfuncgetAll()->[MMNotification]{letcontext=appDelegate.persistentContainer.viewContextletfetchRequest=NSFet

ios - 从这里抛出的错误没有得到处理,因为封闭的 catch 在 context.save 中并不详尽

在将xcode更新到版本8.3.2之后,我遇到了问题并尝试。该代码正在运行,但在该更新之后不再运行。它符合以下代码:funcsaveContext()->NSError?{//Itsavingdo{ifcontext==context{trycontext.save()//taskNameTextField.text=nil}}catchleterroras!NSError?{print("errorsavingcoredata:\(error)")returnerror}returnnil}//有人可以帮助我吗? 最佳答案 事实证

ios - Xcode 7 beta 3 的 Swift 2 中的 try/catch 行为不正确?

我遇到了一些使用Xcode7beta3编译的Swift2代码的问题。我有一个类(见下文),它有一个接受函数f的初始化器,它可以抛出异常。如果f没有抛出异常,则应将成员变量(self.result)设置为包装f返回值的枚举实例。如果f确实抛出异常,则应将self.result设置为指示该值不存在的枚举实例。在初始化程序结束时,self.result不应为nil。我检查了f不抛出的情况,行为是正确的。但是,在f确实抛出异常的情况下,self.result在初始化程序结束时为nil(断言被触发)。如果我在调试器中单步执行,我会看到self.result似乎立即被设置,然后闪回为nil。(注意

ios - 如何使用 swift-4 Promises then, done, catch 等 block

我想了解swift-4中的promise。如何使用多个then语句和done、catchblock。在这里,我试图从promise中获取值(value)。但我收到错误。有人可以帮助我理解promise吗?这是我的代码。importUIKitimportPromiseKitstructUser{varfirstname:String?varlastname:String?}structAPIError{varmessage:String?}classViewController:UIViewController{overridefuncviewDidLoad(){super.viewDi

try catch捕获异常并打印报错行号等信息

在我们系统中,如果某一行代码报错了,我们打印日志的时候却不知道具体报错行号,报错信息等等。如何才能打印报错行号呢?我们拿到Exception对象后,首先要拿到错误的堆栈信息,可以通过下面方法拿到:StackTraceElementstackTraceElement=e.getStackTrace()[0];拿到堆栈信息后,那么我们就可以获取具体的报错信息了.//报错全路径类名stackTraceElement.getClassName();//报错方法stackTraceElement.getMethodName();//报错行号stackTraceElement.getLineNumber(

swift - 将 Swift 字典转换为 JSON 字符串时的 try-catch 位置

这是我得到的:do{tryletjsonData:NSData=NSJSONSerialization.dataWithJSONObject(paramsDict,options:NSJSONWritingOptions.PrettyPrinted)jsonString=NSString(data:jsonData,encoding:NSUTF8StringEncoding)!asString}catch{print("CAUGHTSOMETHINGsessiontoken")}我收到一个错误trymustbeplacedontheinitialvalueexpression。我试过这

swift - 没有 catch block 的 "do statement"是什么意思?

在阅读iOS12编程时,我遇到了几个示例代码,其中包含do语句,没有catchblock,像下面这样:do{letmars=UIImage(named:"Mars")!letsz=mars.sizeletr=UIGraphicsImageRenderer(size:CGSize(sz.width*2,sz.height),format:mars.imageRendererFormat)self.iv1.image=r.image{_inmars.draw(at:CGPoint(0,0))mars.draw(at:CGPoint(sz.width,0))}}//======do{letm