问题标签 [underflow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2530 浏览

sql - 如何防止/检测使用 EXP() 的 Postgresql 计算中的下溢

我在使用 EXP(x) 函数的查询中收到一个超出范围的值:来自 pgsql 的下溢错误。x 的什么值触发了这个?如何预防或检测它?

0 投票
1 回答
2565 浏览

css - CSS 下溢修复

我想知道是否有针对css的下溢修复?最初的问题是溢出,很容易修复,但现在已成为下溢问题。我设置了一个特定的高度值,但它似乎忽略了这一点,而是调整大小以适应内容。

我感谢任何帮助和想法。

谢谢!

0 投票
6 回答
3565 浏览

objective-c - 如何避免GC环境中自定义NSURLProtocol中_NSCFURLProtocolBridge中的引用计数下溢

基础是我有一个自定义的NSURLProtocol. 在startLoading中,[self client]属于:

问题是在垃圾收集环境中运行它。因为我正在编写一个屏幕保护程序,所以我被迫将其作为垃圾收集器。但是,_NSCFURLProtocolBridge 协议似乎总是抛出:

malloc: reference count underflow for (memory_id_here), break on auto_refcount_underflow_error to debug

调试控制台的示例转储是:

ScreenSaverEngine[1678:6807] client is <_NSCFURLProtocolBridge 0x20025ab00> {NSURLProtocol 0x200258ec0, CFURLProtocol 0x20029c400} ScreenSaverEngine(1678,0x102eda000) malloc: reference count underflow for 0x20025ab00, break on auto_refcount_underflow_error to debug.

你可以看到下溢发生在<_NSCFURLProtocolBridge 0x20025ab00>.

当我 break onauto_refcount_underflow_error时,似乎堆栈跟踪回到URLProtocolDidFinishLoading:

这个问题好像有一段时间了,但是网上好像完全没有答案:

http://lists.apple.com/archives/cocoa-dev/2008/May/msg01272.html http://www.cocoabuilder.com/archive/message/cocoa/2007/12/17/195056

该错误仅在这些列出的错误的垃圾收集环境中显示。关于如何在不引起内存问题的情况下解决此问题的任何想法?我假设这可能与 NSURLProtocol 下的 CF 类型被不当释放有关?

0 投票
4 回答
36023 浏览

java - 常见的下溢和上溢异常

我试图在java中掌握溢出和下溢异常,但找不到任何好的教程。具体我想学

  1. 它们彼此有何不同?
  2. 这些异常的子类是什么?
  3. 他们在哪种情况下被抛出?
  4. 其中哪些可以处理,如何处理?
  5. 与它们相关的最佳实践是什么?

任何指向有用教程的链接都可以

0 投票
5 回答
17500 浏览

c++ - 在 C++ 中检查下溢/溢出?

有没有一种通用的方法来检查给定数据类型(uint32、int 等)的上溢或下溢?

我正在做这样的事情:

当我在一些迭代后打印 a 时,它会显示一个大数字,例如:4294963846。

0 投票
3 回答
4938 浏览

binary - 二进制加法。是否溢出?

二进制值采用 2s 补码形式。

如果我要添加 110001 (-15) 和 101110 (-18),并且答案必须存储在 6 位整数中,这是下溢/上溢吗?

0 投票
3 回答
21917 浏览

c - 关于无符号整数下溢的 C 行为问题

我在很多地方读到无符号整数溢出在 C 中定义明确,与有符号对应物不同。

下溢是否相同?

例如:

谢谢。

我不记得在哪里,但我在某处读到无符号整数类型的算术是模块化的,所以如果是这种情况,那么 -1 == UINT_MAX mod (UINT_MAX+1)。

0 投票
2 回答
702 浏览

c++ - 解释对 GNU C++ filebuf::underflow() 与 filebuf::seekoff() 交互的更改

我公司的产品在许多合格的 Linux 硬件/软件配置上运行。从历史上看,使用的编译器一直是 GNU C++。出于本文的目的,让我们将版本 3.2.3 视为基线,因为我们的软件在该版本中“按预期工作”。

随着更新的合格平台的引入,使用 GNU C++ 3.4.4 版,我们开始观察到一些我们以前没有见过的性能问题。经过一番挖掘,我们的一位工程师想出了这个测试程序:

我们针对大约 751KB 字符的日志文件运行它。在之前的配置中,我们得到了结果:

在较新的版本中,结果是:

注释掉pubseekoff(0, ios::cur)调用,过多的underflow()调用消失。很明显,在较新版本的 g++ 中,调用pubseekoff()会使缓冲区“无效”,从而强制调用underflow()

我已经阅读了标准文档,关于pubseekoff()的措辞肯定是模棱两可的。例如,底层文件指针位置与gptr()的位置有什么关系?在调用underflow()之前还是之后?不管怎样,可以这么说,我觉得 g++ '在中游换马' 很烦人。此外,即使一般的seekoff()需要使缓冲区指针无效,为什么要等效于ftell()

任何人都可以指出导致这种行为变化的实施者之间的讨论线程吗?你对所涉及的选择和权衡有一个简洁的描述吗?

额外学分

显然我真的不知道我在做什么。我正在尝试确定是否有一种方法(无论多么不可移植)在 offset 为 0 且 seekdir 为ios::cur的情况下绕过失效。我想出了以下 hack,直接访问filebuf数据成员_M_file(这只是想在我的机器上用 3.4.4 版本编译):

但是,每百次搜索尝试打印出位置的诊断每次都会产生 8192。嗯?由于这是filebuf本身的FILE *成员,我希望它的文件位置指针与filebuf进行的任何underflow()调用同步。为什么我错了?

更新

首先,让我强调一下,我理解我帖子的后面部分都是关于非便携式黑客的。尽管如此,还是不​​明白这里的细节。我试着打电话

相反,这会愉快地通过示例文件进行,而不是卡在 8192。

最终更新

在我的公司内部,我们已经制定了一些变通办法,可以将性能影响降低到我们可以忍受的程度。

在外部,David Krauss 提交了一个针对 GNU 的 libstdc++ 流的错误,最近,Paolo Carlini 签入了一个修复程序。共识是不受欢迎的行为在标准的范围内,但是对于我描述的边缘情况有一个合理的修复。

非常感谢 StackOverflow、David Krauss、Paolo Carlini 和所有 GNU 开发人员!

0 投票
2 回答
2337 浏览

mysql - MySQL 错误代码:1264 第 1 行列“计数”的值超出范围

我有一些 MySQL 代码:

如果 ,这应该将计数设置为零(count -1) < 0

我收到一个错误:

这是因为 count 是一个无符号整数。如果我使用带符号的 int 它可以工作。

这是 MySQL 中的错误吗?我正在使用: mysql Ver 14.14 Distrib 5.1.46sp1, for Win32 (ia32)

0 投票
1 回答
1260 浏览

tree - B 树根中的下溢

我正在尝试实现 3-4-5-6 树。如果合并导致根只有一个键(下溢),并且其子项的键总数大于 5(所以如果全部合并在一起,就会发生下溢),会发生什么?