- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在我看来MappedByteBuffer.isLoaded()在 Windows 上始终返回 false
。当我在 BSD Unix 上测试时,我使用相同的测试数据得到 true
。
我应该担心吗?无论我使用多大的数据,我基本上都无法让 isLoaded()
在 Windows 上返回 true。
这是我的测试代码供引用:
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.MappedByteBuffer;
import java.nio.channels.FileChannel;
import java.util.logging.Level;
import java.util.logging.Logger;
public class MemMapTest {
private static final String FILENAME = "mydata.dat";
private static final int MB_1 = 1048576; // one Mbyte
private static final byte[] testData = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; // len = 10 bytes
public static void main(String[] args) throws FileNotFoundException, IOException {
// Create a 10 Mb dummy file and fill it with dummy data
RandomAccessFile testFile = new RandomAccessFile(FILENAME, "rw");
for (int i = 0; i < MB_1; i++) {
testFile.write(testData);
}
MappedByteBuffer mapbuf = testFile.getChannel().map(FileChannel.MapMode.READ_WRITE, 0, MB_1 * 20).load();
testFile.close();
if (mapbuf.isLoaded()) {
System.out.println("File is loaded in memory");
} else {
System.out.println("File is NOT loaded in memory");
}
}
}
我知道 load()
只是一个提示,但对于我在这里使用的如此小的尺寸,我希望 isLoaded()
在某个时候返回 true。如前所述,这似乎与 Windows 操作系统有关。这基本上意味着 isLoaded()
完全没有用。
也许我应该补充一点,即使 isLoaded()
总是返回 false,我的 MappedByteBuffer
在 Windows 上也能正常工作并且性能出色。所以当它说它没有加载时我真的不相信它。
在 Windows 7 上测试,使用 Oracle Java 7 update 9。
最佳答案
不,你不应该担心。
根据 http://docs.oracle.com/javase/7/docs/api/java/nio/MappedByteBuffer.html该行为依赖于“底层操作系统”的实现。
“返回值 false 并不一定意味着缓冲区的内容不驻留在物理内存中。”
关于Java MappedByteBuffer.isLoaded(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15112448/
在我看来MappedByteBuffer.isLoaded()在 Windows 上始终返回 false。当我在 BSD Unix 上测试时,我使用相同的测试数据得到 true。 我应该担心吗?无论我
这里是一些代码以及我基于在 LINQPad 中尝试的假设。任何人都可以确认这是延迟加载的工作方式,并可能提供任何其他见解/链接,以便我了解它在后端的工作方式吗?提前致谢! // Step 1. var
所以我创建了一个幻灯片。幻灯片使用两个重叠的媒体元素来显示图片。过渡只是意味着减少前景元素的不透明度并增加背景元素的不透明度。 问题是图片加载到媒体元素的速度不够快。这会导致口吃并且通常看起来很糟糕。
有人可以解释一下 PersistenceUtil.isLoaded 在 JPA 和 hibernate 的上下文中返回什么吗?我的印象是,它确定该值是否已加载并且可以在无需访问数据库的情况下进行访问。
很难为这个问题找到好的答案/解决方案。 我有一个 POSTS 列表组件,允许删除单个 POST 行。 我正在使用普通的 queryMutation 进行删除: 实现 deletePostById: b
在 DataGrid我用 CellTemplate和 CellEditingTemplate .在两个数据模板中 FrameworkElement.IsLoaded Property返回 False即
如果我将处理程序附加到元素的 Loaded 事件(无论它是在 VS 设计器中还是在代码中),它会将 IsLoaded 属性设置为 true。 例如,我有一个带有两个 TabItem 的 TabCont
我想在 isLoading 状态更改组件时构建测试。 我知道在类组件中有使用 enzyme 做 setState 的方法,但我想知道我在这里怎么做。 const Spacex = () => {
我有一个从大部分只读数据库中提取的 EF5 Code First 项目,因此我对绝大多数查询使用 .AsNoTracking() 以提高性能。 不过我很好奇:我有许多导航属性,有时了解它们是否已经加载
问题: PersistenceUtil.isLoaded 是通过查看哪个 EntityManager 还是 L2 缓存来评估的?所有实体仅由其中之一加载后。 PersistenceUtil.isLoa
我了解如何通过推送显示 ViewController。 但是,如何重新显示已推送且仍在加载但在屏幕上不可见的 View 。 我试过了 BaseView.PresentViewController(Cu
我已经创建了直接在 store.js 文件中分派(dispatch)的操作,以创建“默认”状态。我有一个默认状态属性: isLoading: false 我分派(dispatch)一个使用有效负载进行
我有指示我的应用程序正在加载的微调器。我的应用程序中的许多 reducer 都需要能够将此加载器设置为 true 或 false。 我的假设:该字段需要位于状态树的最顶层。我们称它为 isLoadin
我想知道调用方法PersistenceUnitUtil#isLoaded(Object)的原因是什么。 JPA Documentation说它可以帮助确定属于持久性单元的实体的加载状态,但它也提到了
我有一个正在加载本地 HTML 文件的应用程序。 HTML 文件在 iFrame 中加载 Google map 。该应用程序有一个后退按钮,用于检查 UIWebView.canGoBack 和 UIW
我正在尝试从 @auth0/auth0-react 中模拟出 useAuth0 并遇到返回模拟值的问题。我目前有一个使用 useAuth0 的简单提供程序 import React, { create
如果突变当前正在执行,通常 isLoading() 会返回 true。但是每当我切换选项卡并返回到原始选项卡时,isLoading() 为 false,即使突变仍在运行。有没有另一种方法来检查突变是否
任何人都可以向我解释为什么 RecordArray 状态 isLoaded甚至在调用 ajax 调用的成功方法之前设置为 true。 来自 ember-data 源代码 findAll: func
我正在寻找一种通用的方法来存储 redux 中实体/数据的 isFetching 。目前我使用normalizr并将我的所有实体数据存储在实体哈希中。例如 { people: { ... },
在我的代码中的某处,我遇到了一个错误。我设置了一个断点来尝试看看发生了什么。当我在控制台中检查对象“foo”时,我得到: foo.toString() > "" // all good foo.get
我是一名优秀的程序员,十分优秀!