我正在尝试使用ICC 2018编译以下代码:
__asm {
mov ebx, xx ;xx address to registers
}
Run Code Online (Sandbox Code Playgroud)
其中xx的类型为int16.这是我函数中的第一条指令.
我使用上面的汇编代码得到以下警告:警告#13212:在需要堆栈对齐的函数中引用ebx
令人惊讶的是,当我用eax或esi替换ebx时,我看到警告消失了.我无法理解为什么我只看到ebx的问题,据我所知,ebx和eax都有相同的架构(32位寄存器).
此外,当我使用ICC 2013编译相同的代码时,我没有看到警告.
谁能帮我解决这个警告?
谢谢!
System.out返回"标准"输出流 - a PrintStream.该javadoc的的PrintStream告诉我任何关于线程安全的,但看源的OpenJDK和OracleJDK告诉我,println是同步的.
/**
* Prints a String and then terminate the line. This method behaves as
* though it invokes <code>{@link #print(String)}</code> and then
* <code>{@link #println()}</code>.
*
* @param x The <code>String</code> to be printed.
*/
public void println(String x) {
synchronized (this) {
print(x);
newLine();
}
}
Run Code Online (Sandbox Code Playgroud)
这非常适合我的经验:System.out.println()从不同的线程调用时,调用从未创建"混合"输出.
所以我的问题:
如果我运行这样的shell命令,我的导出变量是不可见的.
sh -c "export x=100; echo x is $x"
Run Code Online (Sandbox Code Playgroud)
我希望它输出"x是100"但它只是说"x是".如果我运行它是在交互模式下它按预期工作.
我的shell版本是:GNU bash,版本3.2.51(1)-release(x86_64-suse-linux-gnu)
我正在使用 Flink FlinkKafkaConsumer09,我想知道 kafka 消费者的偏移量存储在哪里?
我在 Zookeeper 和 Kafka 的偏移主题中都找不到它们。kafka-consumer-offset工具也找不到。
这是 Flink 内部处理的吗?
当我尝试启动Cassandra时,它向我显示错误,我已经在env.sh中对conf文件进行了更改,该文件也是如此.
没有相似类型错误的选项适用于此.
intx ThreadPriorityPolicy=42 is outside the allowed range [ 0 ... 1 ]
Improperly specified VM option 'ThreadPriorityPolicy=42'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Run Code Online (Sandbox Code Playgroud)
其他信息
java version "9.0.4"
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
Run Code Online (Sandbox Code Playgroud) 在创建flink检查点时,我能否以某种方式获取更多详细信息?创建flink检查点的时间因子10而异.这至少是我的jobmanager logfile告诉我的:
2017-02-14 09:03:43,234 INFO org.apache.flink.runtime.checkpoint.CheckpointCoordinator - Triggering checkpoint 161 @ 1487059423232
2017-02-14 09:08:17,447 INFO org.apache.flink.runtime.checkpoint.CheckpointCoordinator - Completed checkpoint 161 (in 271425 ms).
2017-02-14 09:08:43,233 INFO org.apache.flink.runtime.checkpoint.CheckpointCoordinator - Triggering checkpoint 162 @ 1487059723233
2017-02-14 09:09:46,684 INFO org.apache.flink.runtime.checkpoint.CheckpointCoordinator - Completed checkpoint 162 (in 61951 ms).
Run Code Online (Sandbox Code Playgroud)
检查点161只需要一分钟即可创建,而下一个检查点162需要4.5分钟(它持续8分钟而不是回到1.5分钟).
我正在我的 Flink 应用程序中读取来自 kinesis 的事件。事件采用 protobuf 格式。如果我'com.google.protobuf:protobuf-java:3.7.1'在 flink 应用程序中使用 with ,我就没有问题。但是,如果我将其更改为'com.google.protobuf:protobuf-java:3.10.0'我会得到上述堆栈跟踪异常
java.lang.IncompatibleClassChangeError: class com.google.protobuf.Descriptors$OneofDescriptor has interface com.google.protobuf.Descriptors$GenericDescriptor as super class
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetPublicMethods(Class.java:2902)
at java.lang.Class.privateGetPublicMethods(Class.java:2917)
at java.lang.Class.getMethods(Class.java:1615)
at org.apache.flink.api.java.typeutils.TypeExtractor.isValidPojoField(TypeExtractor.java:1786)
at org.apache.flink.api.java.typeutils.TypeExtractor.analyzePojo(TypeExtractor.java:1856)
at org.apache.flink.api.java.typeutils.TypeExtractor.privateGetForClass(TypeExtractor.java:1746)
at org.apache.flink.api.java.typeutils.TypeExtractor.privateGetForClass(TypeExtractor.java:1643)
at org.apache.flink.api.java.typeutils.TypeExtractor.createTypeInfoWithTypeHierarchy(TypeExtractor.java:921)
at org.apache.flink.api.java.typeutils.TypeExtractor.privateCreateTypeInfo(TypeExtractor.java:781)
at org.apache.flink.api.java.typeutils.TypeExtractor.createTypeInfo(TypeExtractor.java:735)
at org.apache.flink.api.java.typeutils.TypeExtractor.createTypeInfo(TypeExtractor.java:731)
at org.apache.flink.api.common.typeinfo.TypeInformation.of(TypeInformation.java:211)
at org.apache.flink.api.java.typeutils.ListTypeInfo.<init>(ListTypeInfo.java:45)
at …Run Code Online (Sandbox Code Playgroud) 我想知道如果我要求一个子类,为什么 aSet[A]被转换Vector[A]为 a Seq[A]?为了说明这一点,请使用以下示例:
val A = Set("one", "two")
val B = Set("one", "two", "three")
def f(one: Seq[String], other : Seq[String]) = {
one.intersect(other) match {
case head :: tail => head
case _ => "unknown"
}
}
f(A.to, B.to)
Run Code Online (Sandbox Code Playgroud)
这个函数将返回“unknown”而不是一个。原因是A.to将被强制转换为Vector[String]. cons 运算符 ( ::) 不是为 Vectors 定义的,而是为 Lists 定义的,因此应用了第二种情况并返回“unknown”。为了解决这个问题,我可以使用+:为所有定义的运算符Seqs或将 Set 转换为 List ( A.to[List])。所以我的(学术)问题是:
为什么会A.to返回一个 Vector。至少根据Scala 文档,Seqis的默认实现LinearSeq …