小编Sha*_*uri的帖子

无法实现不安全的线程

我正在使用Java修改MultiThreading.我记得如果你没有使用Synchronized(在对象或实例上)方法,那么Method可以由多个线程并行执行.这就是一般情况.下面是我写的代码

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.File;


class FileIn
{
    File f;
    BufferedWriter br;

    public FileIn(String path) throws IOException
    {
        f = new File(path);
        br = new BufferedWriter(new FileWriter(f));
    }

    public void write(String a) throws IOException
    {
        br.write(a);
        br.newLine();
        System.out.println(a);
    }

    public void close() throws IOException
    {
        br.close();
    }
}

class ThreadWriter extends Thread
{
    private FileIn f;
    private String tname;
    public ThreadWriter(FileIn f,String name)
    {
        this.f=f;
        this.tname=name;
    }

    public void run()
    {
        try{ …
Run Code Online (Sandbox Code Playgroud)

java multithreading

2
推荐指数
1
解决办法
46
查看次数

名称隐藏在c ++中

#include<iostream>

using namespace std;

class ParentClass {
public: 
     virtual void someFunc(int a){
        printf(" ParentClass :: someFunc (int) \n");
    };

    virtual void someFunc(int* a){
        printf(" ParentClass :: someFunc (int*) \n");
    };
};

class ChildClass : public ParentClass {
public:
    virtual void someFunc(int* a){
        printf(" ChildClass ::  someFunc(int*) \n");
    };
};

int main(){
    ChildClass obj;
    /* This function call results in an error: */
    obj.someFunc(7);
}
Run Code Online (Sandbox Code Playgroud)

第一个给出错误

tr2.cpp: In function 'int main()':
tr2.cpp:27:19: error: invalid conversion from 'int' to 'int*' [-fpermissive]
     obj.someFunc(7); …
Run Code Online (Sandbox Code Playgroud)

c++ name-hiding

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

使用 Django 未检测到的自定义 SQL 添加的模型字段

我已在模型中添加了一个字段。但我已通过自定义 sql 查询(Alter Field)将该字段添加到数据库中的模型中。现在,当我尝试创建其他迁移文件时,Django 会创建迁移以将字段添加到数据库中的该模型。如何让 django 不这样做?

在添加对另一个字段的引用之前,我需要修改该字段的排序规则。Django Alter Field确实Alter Table-Add Field,AlterTable-Add Reference,而我想要Alter Table-Add Field,Modify Field Collat​​ion,AlterTable-Add Reference。自定义 SQL 查询写入迁移文件内。

django django-models

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

运行Docker Interactive Shell

我正在尝试为使用docker-compose运行的图像运行交互式shell.

我试过docker-run和docker-exec

xyz@abc:~$ sudo docker exec -it 235197ff4f0e /bin/bash
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:262: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory"

xyz@abc:~$ sudo docker run -it  drone/drone:0.7 /bin/bash
No help topic for '/bin/bash'
Run Code Online (Sandbox Code Playgroud)

试图在无人机内生成ssh密钥,以便我可以从私有存储库中克隆.

bash docker drone.io docker-compose

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

预增量和后增量

今天我重新审视了Pre Increment和Post Increment.

我知道的基本定义.

预增量 - 增加值并返回值.

后递增 - 递增值并在递增之前返回值.

但是做一些他们的组合我很难过.

使用基本的C程序,这是我测试的.

最初i = 0.

第一次测试

printf("%d %d",++i,++i);
Run Code Online (Sandbox Code Playgroud)

输出继电器:

2 2
Run Code Online (Sandbox Code Playgroud)

我期望:

1 2
Run Code Online (Sandbox Code Playgroud)

第二次测试

printf("%d %d",i++,i++);
Run Code Online (Sandbox Code Playgroud)

输出继电器:

1 0
Run Code Online (Sandbox Code Playgroud)

我期望:

0 1
Run Code Online (Sandbox Code Playgroud)

第三次测试

printf("%d %d",i++,++i);
Run Code Online (Sandbox Code Playgroud)

输出继电器:

1 2
Run Code Online (Sandbox Code Playgroud)

我期望:

0 2
Run Code Online (Sandbox Code Playgroud)

第四次测试

printf("%d %d",++i,i++);
Run Code Online (Sandbox Code Playgroud)

输出继电器:

2 0
Run Code Online (Sandbox Code Playgroud)

我期望:

1 1
Run Code Online (Sandbox Code Playgroud)

我认为评估可能来自右侧或左侧.在Post增量的情况下,如果是Pre Increment,则可能是左边的.也许Pre Increment的优先级高于Post增量.一些与结果相匹配的想法,但在一次测试中做出的假设并不能解释其他输出.

c undefined-behavior pre-increment post-increment

-1
推荐指数
1
解决办法
789
查看次数