标签: runtime-error

连接套接字上的read()函数可以返回零字节吗?

我知道read()是一个阻塞调用,除非我使套接字无阻塞.所以我希望read()调用请求4K数据应该返回一个正值(没有读取的字节数)或错误的-1(客户端可能的连接重置等).我的问题是:read()可以在任何场合返回'0'吗?

我这样处理read():

   if ((readval = read(acceptfd, buf, sizeof(buf) - 1)) < 0)
    {

    }
    else
    {
       buf[readval] = 0;
       //Do some thing with data  
    }
Run Code Online (Sandbox Code Playgroud)

如果read()返回零,这段代码就会爆炸,我知道如何修复它.但是read()有可能返回零吗?

sockets linux network-programming tcp runtime-error

28
推荐指数
1
解决办法
4万
查看次数

findViewById()上的NoSuchFieldError

我想合并两个android项目,一个是Main,另一个是Library.但是我在这方面遇到了一些麻烦:

Button modificarC;
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_menu_calificaciones);
modificarC = (Button) findViewById(R.id.btn_aseso); //HERE
Run Code Online (Sandbox Code Playgroud)

我尝试了Project Clean ...我的依赖项上也有android-support-v4.jar

这是我的追踪:

04-24 19:39:52.568: E/AndroidRuntime(9486): FATAL EXCEPTION: main
04-24 19:39:52.568: E/AndroidRuntime(9486): java.lang.NoSuchFieldError: com.utez.sistemas.sam.R$id.btn_aseso
04-24 19:39:52.568: E/AndroidRuntime(9486):     at com.utez.sistemas.sam.calificaciones.CalificacionesActivity.onCreate(CalificacionesActivity.java:67)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.app.Activity.performCreate(Activity.java:4465)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1052)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1932)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1993)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.app.ActivityThread.access$600(ActivityThread.java:127)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1159)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at android.os.Looper.loop(Looper.java:137)
04-24 19:39:52.568: E/AndroidRuntime(9486):     at …
Run Code Online (Sandbox Code Playgroud)

android runtime-error findviewbyid

28
推荐指数
2
解决办法
9317
查看次数

为什么我的Swift循环失败并显示错误"无法在结束<start时形成范围"?

我有一个for循环,它检查一个数字是否是一个数字的因子,然后检查该因子是否为素数,然后将它添加到数组.根据原始号码,我会收到错误消息

致命错误:无法使用end <start形成范围

这几乎每次都会发生,但对于某些数字,它可以正常工作.我发现使用它的唯一数字是9,15和25.

这是代码:

let num = 16 // or any Int
var primes = [Int]()

for i in 2...(num/2) {

    if ((num % i) == 0) {
        var isPrimeFactor = true

        for l in 2...i-1 {
            if ((i%l) == 0) {
                isPrimeFactor = false;
            }//end if
        }//end for

        if (isPrimeFactor == true) {
            primes.append(i)
        }//end if

    }//end if

}//end for
Run Code Online (Sandbox Code Playgroud)

for-loop runtime-error factors swift

28
推荐指数
4
解决办法
2万
查看次数

c ++中最难发现的错误

我很清楚,可能不会有"c ++中最难找到的错误",但我仍然对其他人可能已经/可能已经遇到的内容感兴趣.

这个问题的想法是在与朋友讨论时产生的.我们同意,通过在您提交的源代码中包含错误来破坏cpp项目必须相当简单......但我们能想到的最好的事情是使用未初始化的变量(在运行时导致随机分段错误) .我相信有更好的方法......?!

想要错误代码的特征:

  • 首映时必须看起来像有效的代码
  • 不能停止编译代码(太明显)
  • 如果可能的话,错误看起来可能只是一个错误(如果它被发现)
  • 错误必须严重到足以阻止软件运输(例如随机seg故障,代码的逻辑故障等)

尽管如此,虽然它必须引人注目,但在代码提交后不应该显而易见......好吧,你明白了.

别担心,我们的考虑纯粹是理论上的(我们不打算破坏任何项目).我们只是认为这是一个很好的思想实验与他人分享:-)

简而言之:

什么是破坏源代码的最微妙的方法,可能会在差异提交(如git)中被忽视,但最终会阻止软件的发布?

c++ runtime-error

26
推荐指数
4
解决办法
2893
查看次数

单个方法即扩展方法之间的调用是模糊的

我有一个类似的扩展方法

public static class Extension
{
    public static string GetTLD(this string str)
    {
        var host = new System.Uri(str).Host;
        int index = host.LastIndexOf('.'), last = 3;
        while (index >= last - 3)
        {
            last = index;
            index = host.LastIndexOf('.', last - 1);
        }
        var domain = host.Substring(index + 1);
        return domain;
    }
}
Run Code Online (Sandbox Code Playgroud)

我称之为

string domain = "." + _url.GetTLD();
Run Code Online (Sandbox Code Playgroud)

我在构建和清理构建时没有错误.
但我得到compilation error运行时错误说

以下方法或属性之间的调用不明确:'myignOU.Extension.GetTLD(string)'和'myIGNOU.Extension.GetTLD(string)'

我发誓我没有把这个扩展方法放在项目中的任何其他位置.为什么我只在运行时收到此错误..?

但是,如果我删除此方法,那么我在构建时遇到错误,而不是在运行时.没有这种方法的代码,一切正常.

这是编译错误页面

c# asp.net runtime-error ambiguous

26
推荐指数
2
解决办法
8189
查看次数

Java运行时环境导致的致命错误

我正在执行一个junit测试用例

我收到以下错误,

A fatal error has been detected by the Java Runtime Environment:

Internal Error (classFileParser.cpp:3174), pid=2680, tid=2688

  Error: ShouldNotReachHere()

  JRE version: 6.0_18-b07

  Java VM: Java HotSpot(TM) Client VM (16.0-b13 mixed mode windows-x86 )
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议解决方案

java runtime-error

25
推荐指数
2
解决办法
3万
查看次数

运行时错误:无法加载文件或程序集'System.Web.WebPages.Razor,Version = 3.0.0.0

我通过NuGet修改了我的ASP.NET MVC4包,现在System.Web.WebPages.Razor v3无法加载.有时其他包也不会加载.

我的同事运行解决方案没有任何麻烦,所以问题肯定是我的开发系统上的配置(而不是任何已经检查过的).

我已经尝试了各种SOF和其他论坛的建议,包括:

以及从那里链接的建议.我还检查了控制面板,发现没有安装程序引用MVC.(如果重要的话,我正在运行MS Win 7 SP 1.)

我愿意接受任何建议.

这是我的核心转储信息:

'/'应用程序中的服务器错误.

无法加载文件或程序集'System.Web.WebPages.Razor,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.该系统找不到指定的文件.

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.IO.FileNotFoundException:无法加载文件或程序集'System.Web.WebPages.Razor,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.该系统找不到指定的文件.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of
Run Code Online (Sandbox Code Playgroud)

可以使用下面的异常堆栈跟踪来识别异常.

Assembly Load Trace: The following information can be helpful to determine why the assembly 'System.Web.WebPages.Razor,
Run Code Online (Sandbox Code Playgroud)

无法加载版本= 3.0.0.0,Culture = …

c# runtime-error razor asp.net-mvc-4

25
推荐指数
3
解决办法
11万
查看次数

是什么导致"无可辩驳的模式因模式而失败",这是什么意思?

是什么

无可辩驳的模式因模式而失败

意思?什么情况会导致此运行时错误?

haskell runtime-error pattern-matching

24
推荐指数
3
解决办法
9308
查看次数

如何从Clojure错误中获得更好的反馈?

我发现在我的代码中调试Clojure错误与我使用的所有其他编程语言相比非常困难.我的主要编程语言是Java,我对Clojure很新.我写Clojure的大部分时间都花在试图弄清楚"为什么我得到这个错误?" 我想改变这一点.我正在使用CounterClockWise作为我的主要IDE.我不知道如何使用Emacs(但是?).

这是一个例子:

(ns cljsandbox.core)

(def l [1 2 3 1])

(defn foo
  [l]
  (->> l
    (group-by identity)
    ;vals  ;commented out to show my intent
    (map #(reduce + %))))
Run Code Online (Sandbox Code Playgroud)

在这里,我错误地认为group-by返回列表列表,但它实际上返回了一个地图,<key, list<value>>或者你用Java术语表示它.这会显示一条错误消息:

ClassCastException clojure.lang.PersistentVector无法强制转换为java.lang.Number clojure.lang.Numbers.add(Numbers.java:126)

这不是很有用,因为没有堆栈跟踪.如果我输入(e)它说:

java.lang.ClassCastException: clojure.lang.PersistentVector cannot be cast to java.lang.Number
 at clojure.lang.Numbers.add (Numbers.java:126)
    clojure.core$_PLUS_.invoke (core.clj:944)
    clojure.core.protocols/fn (protocols.clj:69)
    clojure.core.protocols$fn__5979$G__5974__5992.invoke (protocols.clj:13)
    clojure.core$reduce.invoke (core.clj:6175)
    cljsandbox.core$foo$fn__1599.invoke (core.clj:10)
    clojure.core$map$fn__4207.invoke (core.clj:2487)
    clojure.lang.LazySeq.sval (LazySeq.java:42)
Run Code Online (Sandbox Code Playgroud)

我不知道如何从这个错误消息中理解,"你以为你是在传递一个列表列表map但是你真的传递了一个map数据类型".堆栈跟踪显示问题是在内部报告的reduce,而不是group-byIMO 内部的报告,这不是我作为人类犯下的错误.这就是程序发现错误的地方.

这些问题可能需要15分钟才能解决.我怎样才能减少时间?


我知道期望动态语言能够捕获这些错误太过分了.但是,我觉得像javascript这样的其他动态语言的错误消息更有帮助.

我在这里非常绝望,因为我现在已经在clojure编写1-2个月了,我觉得我应该更好地解决这些问题.我尝试使用:pre/ :poston函数但是有一些问题 …

runtime-error clojure

24
推荐指数
1
解决办法
3481
查看次数

navigator.mediaDevices 未定义

因此,我制作了一个 WebRTC 屏幕共享应用程序,作为 Chrome 远程桌面和其他常见远程桌面/游戏流服务的自托管替代方案。

我的困境不是navigator.mediaDevices undefinded。每当我通过某个file:///方案启动应用程序时,它都能完美运行;与Mozilla 文档中提到的相同https://。但问题是我并不想举办它,因为它有一些重大安全问题(小号)。那么我如何在192.168.XXX.XXXX没有它给出错误的情况下托管它呢?(我想将它托管在我的本地网络上,以便我可以在其他移动设备上对其进行测试。

html javascript networking runtime-error webrtc

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