问题列表 - 第5389页

从多个线程编写静态数据几乎是安全的

我有一些我想从数据库缓存的状态数据.多个线程中的任何一个都可以修改状态数据.修改数据后,它将被写入数据库.数据库写入将始终由底层数据库访问层按顺序完成,该数据库访问层将数据库操作排入不同进程,因此我不关心那些竞争条件.

仅修改几个线程的静态数据是一个问题吗?从理论上讲,修改可以实现为读取,修改,写入,但在实践中我无法想象这是如此.

我的数据处理类看起来像这样:

class StatusCache
{
public:
    static void SetActivityStarted(bool activityStarted)
        { m_activityStarted = activityStarted; WriteToDB(); }
    static void SetActivityComplete(bool activityComplete);
        { m_activityComplete = activityComplete; WriteToDB(); }
    static void SetProcessReady(bool processReady);
        { m_processReady = processReady; WriteToDB(); }
    static void SetProcessPending(bool processPending);
        { m_processPending = processPending; WriteToDB(); }
private:
    static void WriteToDB(); // will write all the class data to the db (multiple requests will happen in series)
    static bool m_activityStarted;
    static bool m_activityComplete;
    static bool m_processReady;
    static bool m_processPending;
}; …
Run Code Online (Sandbox Code Playgroud)

c++ multithreading

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

我应该首先安装哪个:Visual Studio 2008或SQL Server 2008?

半年前,我安装了Visual Studio 2008和SQL Server 2008.我不太记得我先安装了哪个,但从那时起我无法从Visual Studio IDE连接到任何基于文件的SQL Server数据库.我认为它与Visual Studio中的一个错误有关,我以前在同一个系统上安装了Visual Studio 2005,以及我安装这两个程序的顺序.

现在我很快将升级到Visual Studio Team System,我宁愿避免出现相同的数据库连接问题.我是不是该

A)卸载Visual Studio和SQL Server,然后重新安装SQL Server,然后重新安装Visual Studio?B)只需卸载Visual Studio并更新到VS Team System?

谢谢,

阿德里安

installation sql-server-2008 visual-studio-2008

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

TwoWay或OneWayToSource绑定不能在只读属性上工作

我有一个只读属性,我需要在文本框中显示,并在运行时收到此错误.我已经定了IsEnabled="False",IsReadOnly="True"- 没有运气.其他搜索说,readonly应该修复它,但不适合我.通过添加虚拟设置器我有一个丑陋的解决方法......

wpf binding

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

在没有用户交互的情况下触发的Javascript事件?

我的表单上的文本框可能会更改,具体取决于在各种下拉列表中选择的内容.

有没有办法在文本框值更改时调用javascript函数?

尝试onchange事件,但只有当用户手动更改文本框值时,这似乎才有效.

干杯,

Breandán

javascript events

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

如何在NetBeans中将打开的文件与项目树链接

我觉得这个问题很愚蠢,但我自己找不到解决办法.

当我在编辑器中打开几个文件并在它们之间切换时,我在项目或文件树中查找当前打开的文件时遇到问题.

我之前使用过Eclipse,每次用文件更改选项卡时,项目树都会将焦点设置为同一个文件.有没有办法在NetBeans中做这样的事情?

netbeans netbeans6.5

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

在HashTable中查找Key的方法

我正在尝试创建一个迭代哈希表并将键作为字符串返回的方法,最好的方法是什么?

编辑:从评论中复制

对不起,如果我没有说清楚,我正在尝试用Java做到这一点.我创建了一个测试类

public void runprog() {
    hashMap.put("Butter", 50);
    hashMap.put("Beans", 40);
    for (Object o: hashMap.entrySet() ) {
        Map.Entry entry = (Map.Entry) o;
        System.out.println(entry.getKey() + " " + entry.getValue());
    }
}
Run Code Online (Sandbox Code Playgroud)

它输出

Butter 50
Beans 40

我创建了一个查找Key并返回值的方法

public Object findValue(String Name){
    for (Object o: hashMap.entrySet()) {
        Map.Entry entry = (Map.Entry) o;
        return entry.getValue();
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

当我寻找Butter时,当我寻找Beans它返回50时它返回50

java loops hashtable

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

界面上的属性有什么用?

使用Resharper,我提取了现有类的接口.这个类在一些成员上设置了一些属性,Resharper也将这些属性放在接口成员上.

我可以从界面中删除这些属性吗?实现接口时,接口上的属性不会被继承吗?

.net attributes interface

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

使用C#访问Sharepoint - 我在哪里可以找到参考库?

我目前正在用C#编写一个Windows应用程序,它将文档添加到文档库列表中.我试图引用Microsoft.Sharepoint,但我没有看到Visual Studio 2005中的COM或.NET库添加引用列表.我需要参考什么,我在哪里可以找到它?

谢谢,

亚历克斯

c# sharepoint reference

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

在preferenceChanged方法中Java/Swing堆栈溢出

我目前正在研究一个Java项目,并且遇到了堆栈溢出错误的问题.首先,程序读入大约1,500,000个单词的文件并将其添加到数组中.然后它读入一个约600字的小文件并将其添加到数组中.它检查600字文件中有多少单词出现在另一个文件中.大文件中的每个单词都与一个数字相关联.因此,当它在大文件中找到一个单词时,它会获取该单词及其相关整数的副本并将其添加到数组中.我的问题是我收到了堆栈溢出错误:

"AWT-EventQueue-0" java.lang.StackOverflowError

问题是,当小文件大约200字时程序运行正常.程序必须执行的最后一行是:

result.setPage("file:file for gui NEW.html");
Run Code Online (Sandbox Code Playgroud)

(结果是JEditorPane)

出于某种原因,当小文件是600字时我得到一个stackoverflow错误但是当它是200字时运行正常.它运行最后一行并生成此文件,但不会将其打印到编辑器窗格中,就像异常启动时一样.

任何人都可以帮忙告诉我为什么会发生这种情况以及如何解决这个问题?谢谢.


控制台中的错误是:

Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
    at sun.awt.SunToolkit.getSystemEventQueueImplPP(Unknown Source)
    at sun.awt.SunToolkit.getSystemEventQueueImpl(Unknown Source)
    at java.awt.Toolkit.getEventQueue(Unknown Source)
    at java.awt.EventQueue.isDispatchThread(Unknown Source)
    at javax.swing.SwingUtilities.isEventDispatchThread(Unknown Source)
    at javax.swing.JComponent.revalidate(Unknown Source)
    at javax.swing.plaf.basic.
             BasicTextUI$RootView.preferenceChanged(Unknown Source)
    at javax.swing.text.View.preferenceChanged(Unknown Source)
    at javax.swing.text.BoxView.preferenceChanged(Unknown Source)
    at javax.swing.text.View.preferenceChanged(Unknown Source)
    at javax.swing.text.BoxView.preferenceChanged(Unknown Source)
    at javax.swing.text.View.preferenceChanged(Unknown Source)
    at javax.swing.text.BoxView.preferenceChanged(Unknown Source)
    (... repeating forever ...)

编辑:所以基本上似乎GUI中的两个控件不断调用彼此的preferenceChanged()方法.


Gui似乎是最可能的原因,因为当我运行没有gui的程序并将文件的内容打印到控制台时,它工作正常.我不知道究竟是什么导致了这个问题.我没有使用偏好改变的例程.只有像setSize(),setVisible()等这样的问题会导致它吗?

java swing

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

使用new分配大块内存

我需要用new分配大块内存.

我坚持使用new,因为我正在为两部分应用程序的生产者端编写一个模拟器.实际的生产者代码正在分配这些大块,我的代码有责任删除它们(在处理它们之后).

有没有办法可以确保我的应用程序能够从堆中分配如此大量的内存?我可以将堆设置为更大的尺寸吗?

我的情况是64块288000字节.有时我得到12分配,有时我得到27分配.我得到一个std :: bad_alloc异常.

这是:C++,Linux上的GCC(32位).

c++ memory new-operator bad-alloc

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