相关疑难解决方法(0)

java中多线程环境中的静态方法行为

有一个简单的愚蠢问题困扰着我并在脑海中提出了几个论点.我想抛弃以下问题的所有疑虑.

class Clstest{

    public static String testStaticMethod(String inFileStr) {

        // section 0

        // section 1

        // do something with inFileStr

        // section 2

        // section 3

        return inFileStr;

    }

}
Run Code Online (Sandbox Code Playgroud)

假设有五个线程同时执行一次调用Clstest.testStaticMethod("arg-n").

线程1调用Clstest.testStaticMethod("arg-1").

当线程1在第1部分中时,线程2调用Clstest.testStaticMethod("arg-2").

那么线程1会发生什么?它会进入睡眠状态吗?

当线程1获得机会时,它会从暂停的第1部分恢复执行吗?

当所有五个线程之间共享一个Clstest.testStaticMethod并且相同时,它Clstest.testStaticMethod是如何发生的?

有没有可能交换inFileStr多个线程发送的?

java multithreading static-methods

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

JSON解析错误:无法构造类的实例

无法将json字符串映射到java对象,得到错误JSON解析错误:无法构造com.test.CPInput的实例$ Evc $ Uni

错误:

{
"timestamp": 1502270576300,
"status": 400,
"error": "Bad Request",
"exception": "org.springframework.http.converter.HttpMessageNotReadableException",
"message": "**JSON parse error: Can not construct instance of com.test.CPInput$Evc$Uni: can only instantiate non-static inner class by using default, no-argument constructor; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of com.test.CPInput$Evc$Uni: can only instantiate non-static inner class by using default, no-argument constructor at [Source: java.io.PushbackInputStream@edc246; line: 20, column: 9] (through reference chain: com.test.CPInput["evc"]->com.test.CPInput$Evc["uni"]->java.util.ArrayList[0]**)",
"path": "/demo/addCustomer"
}
Run Code Online (Sandbox Code Playgroud)

JSON

{
  "customerId": "abcdef",
  "customerSegment": {
    "customerType": "customer type", …
Run Code Online (Sandbox Code Playgroud)

java post json spring-boot spring-restcontroller

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