问题标签 [writable]
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.
arrays - 在 Hadoop 中自定义 TwoDArrayWritable 并且无法在 reducer 中对其进行迭代
试图从映射器发出 2 个二维数组作为值。在 hadoop 中,我们有TwoDArrayWritable
1 -2D array
作为输入。为了实现我的用例,我尝试编辑TwoDArrayWritable
以输入2
-2D array
并从映射器发出 2 个 2D 双数组。
显示错误array.set(myInnerArray,myInnerArray1);
编辑:如何在 Reducer 中遍历这些值以获得 myInnerArray 矩阵和 myInnerArray1 矩阵?
到目前为止我所做的是
但是如何将它们存储回双数组?
java - 如何在 Hadoop Writable 中序列化非常大的对象
Hadoop Writable 接口依赖于"public void write(DataOutput out)"
方法。看起来在 DataOutput 接口后面,Hadoop 使用了 DataOutputStream,它在封面下使用了一个简单的数组。
当我尝试在减速器的 DataOutput 中写入大量数据时,我得到:
原因:java.lang.OutOfMemoryError:在 java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:113) 在 java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:113) 的 java.util.Arrays.copyOf(Arrays.java:3230) 请求的数组大小超过 VM 限制。 ByteArrayOutputStream.ensureCapacity(ByteArrayOutputStream.java:93) at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:140) at java.io.DataOutputStream.write(DataOutputStream.java:107) at java.io.FilterOutputStream.write(FilterOutputStream .java:97)
看起来系统无法分配请求大小的连续数组。显然,增加减速器可用的堆大小没有帮助 - 它已经是 84GB (-Xmx84G)
如果我不能减小我需要序列化的对象的大小(因为 reducer 通过组合对象数据来构造这个对象),我应该如何解决这个问题?
java - Nashorn 可写属性
我正在尝试在 Java8 的 Nashorn 中的对象文字中使用不可写属性,如下所示:
代码打印 200 我期待一个错误,因为我已将 x 定义为不可写。
如果我使用 Object.defineProperty() 函数来创建属性或将属性设置为不可写,它就可以工作。正如预期的那样,以下代码会导致错误:
我的问题是为什么在表达式中将可写属性设置为 false 在{ x: {value: 100, writable:false}}
第一种情况下不起作用?是 Nashorn 错误还是我遗漏了什么?
string - 如何在映射器中将字符串作为值传递?
我试图将一个字符串作为映射器中的值传递,但得到它不可写的错误。如何解决?
java - Hadoop - 如何发出 TwoDArrayWritable
我正在从映射器发出 TwoDArrayWritable。我已经实现了扩展 TwoDArrayWritable 的类,以创建默认构造函数。但是当我尝试发出它时,它给了我以下异常:
如何发出 TwoDArrayWritable?我需要一些帮助。
这是扩展 TwoDArrayWritable 的类:
这是映射器:
这是减速器: public class JaccardReducer extends Reducer {
php - PHP is_writable() 检查文件是否可以写入?
我读过我可以使用is_writable()检查文件夹或文件是否可写。
如何检查文件是否可以写入文件夹?
- 我是否检查文件夹以及该文件夹是否可写?然后允许将文件放入该文件夹中吗?
- 如果文件已写入文件夹怎么办,我如何检查它是否可以再次写入(编辑)?我需要吗?如果是这样,我是否检查文件而不是文件夹?
- 这是一种安全的方法(正确)吗?
shell - 查找所有名为“example”的目录,将其设置为可写
我有一个站点,有一些模板目录,有几个模块,每个模块都有自己的模板目录(所以有 N 个名为的目录templates
)。
这些目录中的每一个都有一个目录,称为translated
. 我需要一个脚本来设置所有这些目录并且它的内容是可写的。
我更喜欢通过循环进行此操作,以便我可以回显结果。我的 shell 技能(仍然)非常少,我似乎无法将它们组合起来,我可以从当前工作目录中找到目录,但我似乎无法递归:
这只会找到./templates/translated/
,但不会./some/dirs/deeper/translated/
我$f
现在可以使用 a chmod a+rw
,但这只会将内容设置为可写,我如何也获取目录本身?我也需要在其中写入新文件。
总结:
1)我如何使它递归?
2)如何将目录本身设置为+rw
?
android - 如何使内部存储在android中可写?
我有 android 4.3 的华为 Ascend Y530 手机,现在我既不能读取也不能写入内部存储。第一次它工作正常,一段时间后它刚刚发生。请帮助我如何使我的内部存储可写。在终端模拟器上尝试了命令 restorecon -v -R /media/data,但它一直说无法获取 /data/media 的上下文:传输端点上不支持操作。请帮忙
c - 在运行时更改 C 函数内容
我有一个用例,其中要有条件地选择函数内容。并且该函数指针被传递给其他模块以供以后调用。
填充 encode_function() 后,我会将其传递给其他模块,在那里将调用它。我正在尝试用 C 语言实现它,但到目前为止还没有成功。我试图查看dyncall库,但它仅支持动态参数更改。
我正在寻找允许我在运行时更改函数内容的东西。
java - MapReduce 输出 ArrayWritable
我试图从一个简单的 MapReduce 任务中的 ArrayWritable 获取输出。我发现了一些类似问题的问题,但我无法在我自己的代码中解决问题。所以我期待你的帮助。谢谢 :)!
输入:带有一些句子的文本文件。
输出应该是:
我在工作中得到的输出是:
我认为问题出在 IntArrayWritable 的子类中,但我没有得到正确的更正来解决这个问题。顺便说一句,我们有 Hadoop 2.5,我使用以下代码来获得此结果:
主要方法:
映射器:
减速器:
子类
我使用以下链接找到了解决方案:
- 接口可写(hadoop.apache.org)
- 类 ArrayWritable (hadoop.apache.org)
- stackoverflow.com (1)
- stackoverflow.com (2)
我真的很感谢任何想法!
- - - - 解决方案 - - - -
新子类:
新的减少方法: