小编Edw*_*son的帖子

java线程的结果不一致

我有一个实现runnable的线程类和一个int计数器作为实例变量.两个同步方法添加和子.当我以某种方式运行我的测试类时,它会在几次打印错误的结果.据我所知,当一个方法同步时,整个对象将被锁定以供其他线程访问,每当我们得到相同的结果时,这个逻辑是什么?有些情况并非如此.我错过了什么吗?

我的机器是Windows 7,64位.

 public class ThreadClass implements Runnable {

        int counter = 0;

        @Override
        public void run() {
            add();
            sub();
        }

        public synchronized void add() {
            System.out.println("ADD counter" + (counter = counter + 1));
        }

        public synchronized void sub() {
            System.out.println("SUB counter" + (counter = counter - 1));
        }
    }
Run Code Online (Sandbox Code Playgroud)

识别TestClass

public class ThreadTest {

    public static void main(String args[]) {
        ThreadClass tc = new ThreadClass();
        Thread tc0 = new Thread(tc);
        tc0.start();
        tc0.setPriority(Thread.MAX_PRIORITY);
        Thread tc1 = new Thread(tc);
        tc1.start();
        tc1.setPriority(Thread.NORM_PRIORITY); …
Run Code Online (Sandbox Code Playgroud)

java multithreading

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

Mac + jni + java

一点背景:我有一个需要与mac上的第三方硬件通信的java应用程序.他们给了我sdk,但它不是Java.所以我试图让jnilib充当我的java应用程序和SDK之间的桥梁.

问题:我已经制作了一个与SDK对话的小样本jnilib但是当我尝试在我的java程序中使用它时出现以下错误

Exception in thread "main" java.lang.UnsatisfiedLinkError: /Users/john.doe/Desktop/eclipse/workspace/Lesson13_Jni_Smart7/bin/libSmartTest7.jnilib:  Library not loaded: build/Release/SMARTResponseSDK.framework/Versions/A/SMARTResponseSDK  Referenced from: /Users/john.doe/Desktop/eclipse/workspace/Lesson13_Jni_Smart7/bin/libSmartTest7.jnilib      
Reason: image not found
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1827)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1742)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1045)
    at com.learning.lesson13.JniSmart7.<clinit>(JniSmart7.java:6)
Run Code Online (Sandbox Code Playgroud)

从错误看起来我libSmartTest7.jnilib正在寻找图书馆SMARTResponseSDK.

我试过的,我知道SMARTResponseSDK我的Mac上的库在哪里.我尝试将它复制到eclipse中的工作文件夹但我仍然得到错误.我试过使用-DJava.library.path但我仍然得到错误.

关于什么是最好的方法的任何想法.

java macos sdk java-native-interface

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

如何在多线程HTTPClient环境中使用基本身份验证?

我正在尝试使用HTTPClient将大量请求发布到使用基本身份验证保护的Web服务.虽然我使用的是ThreadSafeClientConnManager,但Apache HTTPClient的基本身份验证实现似乎不是线程安全的.有时请求标头不包含授权元素,导致401.有多种线程使用基本身份验证的常用方法或最佳实践吗?

java multithreading httpclient thread-safety

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

同时使用SSL加密和NTLM身份验证的HttpClient失败

我正在尝试在使用SSL加密(https)和NTLM身份验证的Sharepoint 2010服务器上进行简单的REST调用。当服务器设置为不需要SSL(仅出于测试目的,服务器将在生产中要求SSL)时,我的NTLM身份验证和后续的REST调用可以使用HttpClient正常运行。但是,启用SSL后,身份验证将不再起作用。

这是SSL处理的代码(设置为接受所有证书):

    SSLContext sslContext = SSLContext.getInstance("TLS");

    // set up a TrustManager that trusts everything
    sslContext.init(null, new TrustManager[] { new X509TrustManager() {
        public X509Certificate[] getAcceptedIssuers() {
            return null;
        }

        public void checkClientTrusted(X509Certificate[] certs,
                String authType) { }

        public void checkServerTrusted(X509Certificate[] certs,
                String authType) { }
    } }, new SecureRandom());

    SSLSocketFactory sf = new SSLSocketFactory(sslContext, SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);

    Scheme httpsScheme = new Scheme("https", 443, sf);
    SchemeRegistry schemeRegistry = new SchemeRegistry();
    schemeRegistry.register(httpsScheme);

    ClientConnectionManager cm = new SingleClientConnManager(schemeRegistry);
Run Code Online (Sandbox Code Playgroud)

接下来是执行NTML和HTTP GET调用的代码:

    HttpParams params = new BasicHttpParams(); …
Run Code Online (Sandbox Code Playgroud)

java ssl ntlm httpclient sharepoint-2010

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

Java中的repaint()方法

我正在玩Java图形类,我只是想知道 - 何时需要调用该方法repaint()?我试着将它评论出来,但它似乎并没有影响我的输出GUI.我已经看到它在我阅读过的Java GUI代码中使用了很多.有人会介意何时使用它以及何时不使用它?

java awt repaint

5
推荐指数
1
解决办法
3万
查看次数

我无法在Visual Studio 2012 RC中创建或打开单元测试项目

在Visual Studio 2012 RC中打开或创建单元测试项目时,我一直遇到错误.我在哪里可以找到有关如何解决此问题的答案.我尝试过多次维修.我尝试过卸载并重新安装.我删除了产品附带的所有扩展(NuGet).任何帮助修复此错误或找到我可以获得帮助的地方都会受到欢迎.

The 'Microsoft.VisualStudio.TestTools.Tips.TuipPackage.TuipPackage, Microsoft.VisualStudio.QualityTools.Tips.TuipPackage, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' package did not load correctly.

The problem may have been caused by a configuration change or by the installation of another extension. You can get more information by examining the file 'C:\Users\Me\AppData\Roaming\Microsoft\VisualStudio\11.0\ActivityLog.xml'.
Run Code Online (Sandbox Code Playgroud)

我相信这是该文件的相关部分:

Entering function CVsPackageInfo::HrInstantiatePackage {52CBD135-1F97-2580-011F-C7CD052E44DE}

Begin package loadBegin package load {52CBD135-1F97-2580-011F-C7CD052E44DE}

ERROR SetSite failed for packageSetSite failed for package {52CBD135-1F97-2580-011F-C7CD052E44DE} 80070057 - E_INVALIDARG

ERROR End package loadEnd package load {52CBD135-1F97-2580-011F-C7CD052E44DE} 80070057 - E_INVALIDARG

Entering function CVsPackageInfo::HrInstantiatePackage {52CBD135-1F97-2580-011F-C7CD052E44DE}

Begin …
Run Code Online (Sandbox Code Playgroud)

unit-testing visual-studio-2012

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

使用Eclipse身份验证的Team Explorer Everywhere

我在Eclipse中使用Team Explorer Everywhere.当我尝试签入我的更改时,我收到以下错误:

访问被拒绝连接到TFS服务器myServerAddress(验证为myComputerName/myUser)

我尝试使用CrossPlatformCommandLine工具和tf profile命令,但我收到以下消息

发生参数错误:命令"profile"未知

我如何管理我的凭据?

eclipse tfs team-explorer-everywhere

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

仅查询在Team Foundation Server中分配给我的工作项

我们在TFS 2010中的3个项目集合中有项目.

目前,当用户运行工作项查询时,该用户可以查看他们有权访问的项目中的所有工作项.如何对此进行限制,以便用户只能查看[Assigned To]设置字段的工作项?

tfs workitem

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

使用Jenkins和Git进行身份验证

我想将Jenkins与Bitbucket上的存储库一起使用.为此,我使用用户jenkins和命令创建了一个ssh密钥ssh-keygen -t rsa -C "my_email".我在Bitbucket上添加了公钥,我可以用它来克隆一个项目git clone ....

但是当我在Jenkins中配置项目时,我把网址 git@bitbucket.org:my_username/my_repository.git

这是错误:

Failed to connect to repository : Command "git ls-remote -h git@bitbucket.org:skurty/ma-carte-augmentee-bo.git HEAD" returned status code 128:

stdout: 

stderr: ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory 
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

如果我做ssh git@bitbucket.org,我得到:

PTY allocation request failed on channel 0
conq: logged in as my_username.

You can use git or hg to connect to Bitbucket. Shell access is disabled.
Connection …
Run Code Online (Sandbox Code Playgroud)

git jenkins

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

如何将功能分支合并到 Git 中的分支开发?

我是 Git 的新手,我有一个简单的问题

尽管在本论坛中已多次询问此问题,但我想将我的问题限制在以下情况

1)  Feature A  (Files A, B and C were modified) cut from 'develop'
2)  Feature B  (Files A and D were modified) cut from 'develop'
Run Code Online (Sandbox Code Playgroud)

功能 A 已成功合并到分支 'develop'

现在的问题是,我们应该遵循什么方法将“Feature B”合并到“develop”分支

我们是否应该拉取最新版本的“开发”并合并“功能 b”的更改(或)将“功能 b”合并到“开发”以便“文件 A”具有所有更改的其他最佳方法是什么?

git version-control merge github

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