小编Eli*_*ahu的帖子

共享对象中的函数名称冲突

我移植了ODBC从司机WindowsLinux.
驱动程序是写的C.工作
方式是应用程序调用ODBC管理器(),然后加载相应的驱动程序并传递函数调用. ODBCLinuxODBCM

假设我的驱动程序被编译成一个共享对象,它暴露了两个函数AB.
应该发生的是ODBCMis调用函数A,函数A是调用函数B.
什么是实际发生的情况是,当函数A调用函数B而不是函数B'(具有相同的名称B,坐落在libodbc共享对象,并通过加载Linux使用ODBC的应用程序)被调用.

我觉得应该有编译时标志或后期编译库修改工具来纠正这个问题.
目前我正在通过库一次执行以下功能:

_B(){ // rename old functions
  ...
}
B() { // add new wrapper function
  return _B(); // which just calls old
}

_A() {
  ... 
  _B(); // Change calls to renamed functions
  ... 
}
Run Code Online (Sandbox Code Playgroud)

变化缓慢,感觉很糟糕.

c odbc shared-libraries

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

使用geb保存当前网址

我正在进行测试geb,但我遇到了问题.我需要保存/打印当前页面的地址(功能SaveUrl()).

Spock测试:

class TestSpec extends GebReportingSpec {
def "Google"() {
    given: "go to google.com"
    to GooglePage

    when: "we at Google home page"
    at GooglePage

    then: "Search Yahoo"
    Search("Yahoo")
    SaveUrl()
    }
}
Run Code Online (Sandbox Code Playgroud)

GooglePage:

class GooglePage extends Page {
    static url = "http://www.google.by"
    static at = { $("title").text() == "Google"}
    static content = {
        theModule { module SearchModule }
    }

def Search(String arg0) {
    theModule.field.value(arg0)
    theModule.search.click()
    }

def SaveUrl() {
    // need implement
    }
}
Run Code Online (Sandbox Code Playgroud)

Modile:

class SearchModule …
Run Code Online (Sandbox Code Playgroud)

groovy spock geb

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

使用 LibGDX 制作“切换按钮”

我正在尝试使用 制作某种切换按钮LibGDX,所以我搜索了如何执行它们,并且找到了该类ToggleButton,但我认为它很旧,因为我在上一个版本中没有它......
所以我尝试这样做:

final TextButton button = new TextButton(weapon.getName(), skin2, "buy");

            button.addListener(new ClickListener() {
                    @Override
                    public void clicked(InputEvent event, float x, float y) {
                        if(button.isChecked()){
                            button.setChecked(false);
                            System.out.println("unchecked");
                        } else {    
                            button.setChecked(true);
                            System.out.println("checked");

                        }
                    }
              });
Run Code Online (Sandbox Code Playgroud)

实际上,它一直告诉我unchecked,好像我的按钮总是未被选中,所以该setChecked方法似乎没有字...
我尝试了切换方法,它根本没有帮助,而且我没有找到任何其他方法解决方案...
所以我想知道你是否知道我应该如何做到这一点!

感谢您的帮助 !:)

java button libgdx

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

在编译时在cuda内核中使用__ldg时出错

我的目标是利用我的应用程序中的缓存内存并搜索在线示例显示使用__ldg应该相对简单.

NVIDIAGPU优化文档(在这里找到:https://www.olcf.ornl.gov/wp-content/uploads/2013/02/GPU_Opt_Fund-CW1.pdf),它提供了一个简单的例子:

__global__ void kernel ( int *output, int *input)
{
  ...
  output[idx] = __ldg( &input[idx] );
}
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试编译它时,我收到以下错误消息:

error: identifier "__ldg" is undefined.  
Run Code Online (Sandbox Code Playgroud)

不幸的是,在Google上搜索此错误消息的解决方案无济于事.有什么建议这个简单的例子可能有什么问题吗?
是否有我遗漏的编译器标志?

作为参考,我的设备是计算能力3.5,我正在使用CUDA 5.5.

谢谢.

c++ cuda

3
推荐指数
2
解决办法
3798
查看次数

无限循环内的同步块

我有两个线程,比如T1T2,它们同时对同一个对象obj:

class T1 extends Thread {
  public void run() {
    while(true) {
      synchronized(obj) {
        while(condition) {
          ...do something...
          obj.wait();
        }
        ...do something else...
        obj.notify();
      }
    }
  }
}


class T2 extends Thread {
  public void run() {
    while(true) {
      synchronized(obj) {
        while(!condition) {
          ...do something...
          obj.wait();
        }
        ...do something else...
        obj.notify();
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

所以,说T1首先获得锁定,进入while(condition)循环并暂停自己.另一方面,T2现在可以自由获取锁定:!condition未满足,因此它不会进入内部while循环,它会执行其他操作然后调用obj.notify().
我期待的是:T1唤醒,获取锁定等等,但我看到的大部分时间是T1无法获取锁定因此T2 …

java concurrency multithreading

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

Paypal api oauth

The documentation says to obtain oauth token use the following :

curl -v https://api.sandbox.paypal.com/v1/oauth2/token \ -H "Accept: application/json" \ -H "Accept-Language: en_US" \ -u "EOJ2S-Z6OoN_le_KS1d75wsZ6y0SFdVsY9183IvxFyZp:EClusMEUk8e9ihI7ZdVLF5cZ6y0SFdVsY9183IvxFyZp" \ -d "grant_type=client_credentials"

How to send -u and -d parameters using angular js

    var senddata = {
        clientId:"Ac8T1BCmIxgxbS5O_ztwejxvNW8Cbr0y1724_2cd8bGl68axHyw_nEdcOBli",
        secret:"EAwgXhALV78LnphCPf-R3zs1Dx3nkcIOMc4TftSLh9q5EpgyqdeE19El9Oh0",
        grant_type:"client_credentials"
    };
Run Code Online (Sandbox Code Playgroud)

Tried passing senddata in http.post(url,senddata)

But I am getting

{"error":"invalid_client","error_description":"Invalid client credentials"}  
Run Code Online (Sandbox Code Playgroud)

curl paypal oauth angularjs

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

Selenium WebDriver:无法使用 TinyMCE 编辑器定位 iframe 内的元素

也许我的问题类似于这个Selenium WebDriver 无法在 iframe 中定位元素,并抛出 NoSuchElementException 但是我仍然找不到所需的元素。
元素本身看起来:

body id="tinymce" class="mceContentBody" contenteditable="true" onload="window.parent.tinyMCE.get('compose_295_composeEditor').onLoad.dispatch();" dir="ltr" style="overflow: auto;">
Run Code Online (Sandbox Code Playgroud)

iframe含有该元素:

body id="tinymce" class="mceContentBody" contenteditable="true" onload="window.parent.tinyMCE.get('compose_295_composeEditor').onLoad.dispatch();" dir="ltr" style="overflow: auto;">  
Run Code Online (Sandbox Code Playgroud)

我试过

driver.switchTo().frame(10);
driver.switchTo().frame(driver.findElement(By.id("tinymce")));
driver.findElement(By.id("tinymce")).clear();
driver.findElement(By.id("tinymce")).sendKeys("Privet!"); // clear mail text body
driver.switchTo().defaultContent();  
Run Code Online (Sandbox Code Playgroud)

但收到错误:

Unable to locate frame: 10 
Run Code Online (Sandbox Code Playgroud)

也尝试过类似的东西

driver.switchTo().frame(driver.findElement(By.id("tinymce")));  
Run Code Online (Sandbox Code Playgroud)

如其他答案中所述,但收到 NoSuchElement 错误。

HTML元素周围是:

<div class="b-compose__editor ru_RU">
<div id="compose_295_toolbar_external" class="compose__editor_toolbar defaultSkin">
<div class="js-removeDraftContainer infobar infobar_notice infobar_draft" style="display: none;">
<div id="compose_295_composeFrame" class="b-compose__editor__frame">
<div class="compose__editor__frame_shadow"></div>
<table class="w100" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="vti …
Run Code Online (Sandbox Code Playgroud)

java iframe selenium selenium-webdriver

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

全局变量由多个函数改变 - 如何在Python中声明

我在多个函数中使用了一些变量.
这包括通过每个函数更改变量值.
我已经在第一个函数中将变量声明为'global'.
我应该global在每个函数中一次又一次地声明这个变量(并且这不会覆盖global我在第一个函数中声明的第一个变量)或者我不应该像global在所有那些函数中那样再次声明它(但是局部变量仍然会被看到因为global,因为我已经宣布这个变量,因此第一次)?

python global-variables python-3.x

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

如何在没有前导零的情况下在 SQL 中显示日期

是否有 SQL 格式可以从日期中删除前导零?

就像日期是否01/12/2015将其呈现为1/12/2015,并且01/01/2016应显示为1/1/2016

整个日期通常包含dd/MM/yyyy HH:mm:ss. 我需要在不更改其余信息的情况下删除那些多余的前导零。

目前我使用包含以下内容的查询:

convert(varchar, dateadd(hh, " + 2 + " , o.start_time), 103)) + ' '  
left(convert(varchar, dateadd(hh, " + 2 + " , o.start_time), 108), 110)  
Run Code Online (Sandbox Code Playgroud)

我正在使用 SQL Server 2008

sql sql-server date-format sql-server-2008 date-formatting

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

使用无头浏览时,元素在点处不可点击...错误

当我在无头模式下运行下面的代码段时,出现此错误“org.openqa.selenium.ElementClickInterceptedException:元素单击被拦截:元素在点 (209, 760) 处不可单击”。当它在显示浏览器的情况下运行时,我没有错误并且测试顺利通过。正如你在下面看到的,我尝试等待,js 执行器,动作移动到元素,但仍然没有好的结果。我使用 xpath 来定位/定义元素,而不是坐标。为什么会发生这种情况,我该如何解决?提前致谢。

@Test(priority = 1)
    public void verifyAddUserWithMarkedMandatoryFields() {

        // accessing add user webpage / functionality
        userListObject.getAddUserButton().click();

        // inserting data to complete form
        addOrEditUserPageObject.insertCredentials(userModel.getUsername(), userModel.getEmail(), "", userModel.getPassword());

        // clicking Submit when becoming enabled
        WebDriverWait myWaitVariable = new WebDriverWait(driver, 5);
              myWaitVariable.until(ExpectedConditions.elementToBeClickable(addOrEditUserPageObject.getSubmitButtonAddOrEdit()));

//            Actions actions = new Actions(driver);
//            actions.moveToElement(addOrEditUserPageObject.getSubmitButtonAddOrEdit()).click().perform();

            JavascriptExecutor jse = (JavascriptExecutor)driver;

//            jse.executeScript("scroll(209, 760)"); // if the element is on top.

            jse.executeScript("scroll(760, 209)"); // if the element is on bottom.

            addOrEditUserPageObject.getSubmitButtonAddOrEdit().click();
            
    }
Run Code Online (Sandbox Code Playgroud)

selenium-webdriver google-chrome-headless

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