标签: error-handling

"尝试......除外"的效率

代码工作正常.我刚才有一个效率问题.在这段代码中,我使用" try... except"来传递会导致程序崩溃的错误.该错误是由IP地址无法访问引起的.正如我之前所说,代码完成了它的工作.我想知道这是否是最快的方式来查看IP是否可以访问并将其传递出去.如果找不到IP,它会停止30到45秒.堆积了几次这可能相当费时.

import win32net

def GetUsers( IP ):
    try:
        Users = win32net.NetGroupGetUsers(IP,'none',0),
    except:
        print IP + ': Was not found!'
    else:
        print IP + ': ' + Users
    return

F = open("C:\Users\*User*\Desktop\IP_List.txt")

for CurrentIP in F.readlines():
    GetUsers(CurrentIP.strip()),

F.close()
print 'DONE!'
Run Code Online (Sandbox Code Playgroud)

python ip error-handling performance try-except

0
推荐指数
1
解决办法
198
查看次数

在Java中使用什么级别的异常堆栈跟踪日志记录?

我正在寻找有关如何有效记录异常及其堆栈跟踪的最佳实践文档(或您的意见).当然,假设一个流行的日志框架,如Log4J,SLF4J,java.util.logging等.

我对你应该记录什么级别的堆栈跟踪的意见特别感兴趣.

我听到几个相互矛盾的意见,例如:

  • 堆栈跟踪应仅在DEBUG级别记录,而ERROR级别应仅包含"人类可读"错误消息
  • 堆栈跟踪应记录在ERROR级别,以便为操作员提供查找异常根本原因所需的最大信息量

我找到了几篇有趣的文章,但没有一篇涉及这个特定的主题:

这可能意味着这些文章的作者与我有同样的担忧:-)

我对你对这个问题的看法非常感兴趣.

java error-handling exception stack-trace

0
推荐指数
1
解决办法
4910
查看次数

AS3:错误1046:未找到类型或不是编译时常量:Stage和TextField

所以,我正在制作一个游戏,当我将我的类测试到一个文件中时,我得到了四个相同类型的错误'1046:未找到类型或者不是编译时常量:Stage和TextField'.我已经导入了所有东西,请看一下:

Game.as

package  {

import flash.display.Stage.*;
import flash.filter.GlowFilter.*;
import flash.text.TextField.*;
import flash.net.URLLoader.*;
import flash.net.URLRequest.*;
import flash.net.URLRequestMethod.*;
import flash.net.URLLoaderDataFormat.*;
import flash.net.URLVariables.*;


public class Game {

    public static const STATUS_MENU:int = 1;
    public static const STATUS_SURVIVAL:int = 2;
    public static const STATUS_MULTIPLAYER:int = 3;

    public static const GAME_RUN:int = 1;
    public static const GAME_PAUSE:int = 2;

    public static var palco:Stage;
    public static var profileName:Array; //Name, status, pass

    public function Game():void {
        trace("Class Game is online.");
    }

    public function transStage(sender:Stage):Stage {
        palco = …
Run Code Online (Sandbox Code Playgroud)

oop flash error-handling actionscript-3

0
推荐指数
1
解决办法
2万
查看次数

C++中的变量范围?

在c ++中,main中声明的所有变量都可以在主权中使用?我的意思是如果变量是在try循环中声明的,那么它们仍然可以在整个main中访问吗?因为我在main中的try循环中声明了几个变量,但是如果我在try循环之外的main的任何其他部分中使用它们,我会得到"未在此范围中声明"错误

遗憾的是我无法发布我的实际代码,但这基本上就是我在做的事情

int main()
{
   try 
   {
     int number = 0;
   }

   catch (...)
   {
     cout <<"Error";
   }

   number ++;
   cout <<number;

   return 0;
}
Run Code Online (Sandbox Code Playgroud)

我基本上会在第13行和第14行得到一个错误,说这个范围没有声明数字.

c++ debugging error-handling scope

0
推荐指数
2
解决办法
2118
查看次数

使用cakephp保存数据不起作用

我想load,editsave用一记CakePHP 2.0,但我得到generic error 的期间save不帮我明白问题出在哪里方法.

如果我尝试debug($this->User->invalidFields());我得到一个empty array,但我false$this->User->save()条件得到.

这是我得到错误的控制器操作:

public function activate ($code = false) {
    if (!empty ($code)) {

        // if I printr $user I get the right user
        $user = $this->User->find('first', array('activation_key' => $code));

        if (!empty($user)) {
            $this->User->set(array (
                'activation_key' => null,
                'active' => 1
            ));

            if ($this->User->save()) {
                $this->render('activation_successful');
            } else {
                // I get this error
                $this->set('status', 'Save error …
Run Code Online (Sandbox Code Playgroud)

error-handling save cakephp-2.0

0
推荐指数
1
解决办法
4497
查看次数

php登录无法正常工作

我有一个包含以下字段的mysql表:

id用户名密码角色

管理员的角色编号为1,普通用户的角色编号为2

    <?php
// we must never forget to start the session
session_start();

$errorMessage = '';
if (isset($_POST['username']) && isset($_POST['password'])) {
    include 'library/connect.php';

    $username   = $_POST['username'];
    $password = $_POST['password'];

    // check if the user id and password combination exist in database
    $sql = "SELECT role FROM user WHERE username = '$username' AND password = '$password'";

    $result = mysql_query($sql) or die('Query failed. ' . mysql_error()); 
    $row = mysql_fetch_array($result);

    if (mysql_num_rows($result) == 1 AND $row['role']==2) {
        // the user id and …
Run Code Online (Sandbox Code Playgroud)

php mysql error-handling

0
推荐指数
1
解决办法
189
查看次数

Java - 如何处理OutOfMemoryError?

我正在创建一个应用程序,用户可能会得到一个OutOfMemoryError; 现在我想找到一种方法,可以通知用户程序遇到OutOfMemoryError,这样他/她就可以采取相应的行动.(例如,使用更大的堆空间重新启动程序等)

如何"捕获"错误,以便我可以通知用户?

java error-handling exception out-of-memory

0
推荐指数
1
解决办法
652
查看次数

在插入[mysql_errno()]之前检查预先存在的记录的最快方法

我的问题将使用电子邮件作为示例,但这可能适用于任何事情.


通常在注册新用户之前(包括插入他/她的电子邮件),我检查他/她的电子邮件是否已存在于DB中,如下所示:

$result = mysql_query("SELECT * FROM Users WHERE email = '".mysql_real_escape_string($email)"';");
if(!$result)
{
    die(mysql_error());
}

if(mysql_num_rows($result) > 0)
{
    die('<p>Email already in DB. <a....>Recover Email</a></p>');
}
else
{
    //insert new user data into Users table
}
Run Code Online (Sandbox Code Playgroud)

既然我已经限制了email我的Users表中的字段UNIQUE,那么首先尝试插入是否会更快,如果失败,请检查错误?像这样的东西:

$result = mysql_query(...);//insert new user data into Users table
if(!$result)
{
    if(mysql_errno()==$insert_unique_error)
    {
        $error = '<p>Email already in DB. <a....>Recover Email</a></p>';
    }
    else
    {
        $error = mysql_error();
    }
    die($die_str);
}
Run Code Online (Sandbox Code Playgroud)

问题是我不知道应该是什么$insert_unique_error.这些是我能找到的唯一错误代码:

SQLSTATE值的前两个字符表示错误类: …

php mysql error-handling insert unique-constraint

0
推荐指数
1
解决办法
4495
查看次数

尝试在.net中捕获

我正在寻找以下最有效和最优雅的方式:

  • 当Filename有效,损坏,不存在时,可以调用我的函数

该函数将反序列化XML对象.

主要可能的结果是:

  • 文件不存在
  • XML文件出错

如果我这样写,如果文件损坏,读者将不会被关闭.如果我在finally块中写入reader.close(),它会在给它分配值之前给出一个关于使用read的警告.

那么,我该如何解决这个问题?

Public Function DeSerializzaXML(ByVal FileName As String, ByRef tmpObj As Object, ByVal tmpClass As Type) As Boolean
    Dim serializer As XmlSerializer
    Dim reader As StreamReader
    Dim tmpSuccess As Boolean = False
    Try
        serializer = New XmlSerializer(tmpClass)
        reader = New StreamReader(FileName)
        tmpObj = serializer.Deserialize(reader)
        reader.Close()
        tmpSuccess = True
    Catch ex As Exception
        AggiungiRigaSuFile(ErroriPath, FileName + ", " + ex.Message, Configurazione.DiagnosticaOff, True)
    Finally

    End Try

    Return tmpSuccess
End Function
Run Code Online (Sandbox Code Playgroud)

.net vb.net error-handling try-catch

0
推荐指数
1
解决办法
2104
查看次数

C:返回错误的代码样式?

我的所有功能都是这样的:

short Function()
{
   short ret = 0;

   ret = FunctionA();   
   if(ret != 0) return ret;

   ret = FunctionB();
   if(ret != 0) return ret;

   ret = FunctionC();
   if(ret != 0) return ret;

   return 0;
}
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来写这个?无需重复

if(ret != 0) return ret;
Run Code Online (Sandbox Code Playgroud)

每时每刻?

c error-handling styles return-value

0
推荐指数
2
解决办法
187
查看次数