问题列表 - 第34163页

在Java中找不到现代的Object Pool实现

我正在寻找Java中的对象池的现代实现.我可以看到apache commons one,但说实话,我宁愿使用泛型,以及来自更新版本java的并发内容.

公共泳池真的运作良好吗?代码看起来很漂亮,呃,丑陋.

我需要一些允许自定义活动验证等的东西.

谢谢!

java multithreading object-pooling

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

如何使用automake安装数据目录树

如何使用automake安装HTML文件,样式表和图像的目录树,而无需在每个子目录中创建Makefile?

在顶层目录中使用以下内容

htmldir = $(docdir)/foo/html
html_DATA = \
        stylesheets/foo.css \
        images/foo.jpg \
        index.html \
        about/index.html \
        faq/index.html
EXTRA_DIST = $(html_DATA)
Run Code Online (Sandbox Code Playgroud)

失败,因为在install调用之前未创建子目录.

automake

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

在原子变量上使用volatile

在变量上使用volatile可以降低内存一致性错误的风险(如果这揭示了我对任何相关概念的理解中的一些漏洞,请纠正我).因此,在下面的示例中,即使变量c1是易失性的,仍然发生内存持续性错误导致c1在输出中变为15或有时为14而不是正确的输出16.

class Lunch implements Runnable {

    private volatile long c1 = 0;
    private Object lock1 = new Object();
    private Object lock2 = new Object();
    public void inc1() {
       // synchronized(lock1) { c1 is volatile
            c1++;
       // }
    }

    public void run() {
        try {
            inc1();
            Thread.sleep(1000);
            inc1();
            Thread.sleep(1000);
            inc1();
            Thread.sleep(1000);
            inc1();
            inc1();
            Thread.sleep(1000);
            inc1();
            Thread.sleep(1000);
            inc1();
            Thread.sleep(1000);
            inc1();
        }
        catch(InterruptedException e) {
            return;
        }
    }
    public long value() {
        return c1;
    }
    public static void main(String args[]) throws InterruptedException { …
Run Code Online (Sandbox Code Playgroud)

java concurrency multithreading volatile

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

如何更改boost释放变体以使用cxxflags = -O2?

在我的机器上,默认情况下,variant = release的cxxflags是-O3.
我需要将它改为-O2.请告知如何继续.

如果有人可以就此提出建议,我也可以定义一个新变种.

boost boost-build bjam

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

泛型类型与其默认值的比较(没有泛型类约束)会产生编译时错误

我刚遇到这种情况,我认为这是一个使用default关键字的好机会.但它没有编译,我想不出为什么.以下示例说明了我的问题:

public class Test<TDataSource>
{
    public IQueryable<TDataSource> DataSource { get; set; }

    public bool GetOneOrDefaultResult()
    {
        var result = DataSource.SingleOrDefault();
        return result != default(TDataSource);
    }
}
Run Code Online (Sandbox Code Playgroud)

你会在第8行得到一个错误("运算符'=='不能应用于'TDataSource'和'TDataSource'类型的操作数.").我认为使用default关键字将消除引用类型和值类型之间的任何比较问题.

添加将TDataSource限制为引用类型的通用约束使得这段代码可以编译.

有人可以解释为什么编译器不会为我解决这个问题吗?只是不够聪明才能看到这会起作用吗?

这是相关的: 不能将operator ==应用于C#中的泛型类型?

[编辑] SLaks的答案给了我一些灵感,'=='运算符不起作用,但Equals函数应该.

    public class Test<TDataSource>
{
    public IQueryable<TDataSource> DataSource { get; set; }

    public bool GetOneOrDefaultResult()
    {
        var result = DataSource.SingleOrDefault();
        return result.Equals(default(TDataSource));
    }
}
Run Code Online (Sandbox Code Playgroud)

这个编译会正常吗?

.net c# generics .net-3.5

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

实施网站离线?

现在不需要这样做但是考虑未来......

通过自定义编码cms将网站"脱机"一点的方法是什么?含义赋予管理员登录管理面板,在框中键入消息并提交表单的功能.除非用户是管理员,否则该消息将显示给任何用户而不是任何其他页面.

我之前已经完成了这个并且使用了一个if xml文件,然后从xml文件加载内容并在消息后面添加一个构造背景,其中一个登录框只允许管理员登录.当管理员将消息输入到框中时它将文本存储到xml中.当他们将网站"恢复生机"时,它只会删除xml文件.

唯一的问题是,一旦网站增长,它需要更多的点击并检查文件存在每个页面加载变得缓慢.任何人都有更好的解决方案吗?

谢谢.

php performance offline-mode

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

如何在ClientValidationFunction上获取'controlToValidate'属性?

可以说我有这个代码.

<asp:TextBox ID="TextBox1" runat="server" />

<asp:CustomValidator ID="CustomValidator1" runat="server"
    ClientValidationFunction="ValidationFunction1"
    ControlToValidate="TextBox1"
    Display="Dynamic" />
Run Code Online (Sandbox Code Playgroud)

还有一个validationFunction:

function ValidationFunction1(sender, args)
{
}
Run Code Online (Sandbox Code Playgroud)

而且我想知道,如果在函数内部我可以让Control来验证类似的东西:

var v = sender.ControlToValidate;
Run Code Online (Sandbox Code Playgroud)

c# asp.net validation customvalidator asp.net-validators

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

java中一个对象的线程安全缓存

假设我们的应用程序中有一个CountryList对象,它应返回国家/地区列表.加载国家是一项繁重的操作,因此应该缓存该列表.

其他要求:

  • CountryList应该是线程安全的
  • CountryList应加载延迟(仅按需)
  • CountryList应支持缓存失效
  • 考虑到缓存很少会失效,应优化CountryList

我提出了以下解决方案:

public class CountryList {
    private static final Object ONE = new Integer(1);

    // MapMaker is from Google Collections Library    
    private Map<Object, List<String>> cache = new MapMaker()
        .initialCapacity(1)
        .makeComputingMap(
            new Function<Object, List<String>>() {
                @Override
                public List<String> apply(Object from) {
                    return loadCountryList();
                }
            });

    private List<String> loadCountryList() {
        // HEAVY OPERATION TO LOAD DATA
    }

    public List<String> list() {
        return cache.get(ONE);
    }

    public void invalidateCache() {
        cache.remove(ONE);
    }
}
Run Code Online (Sandbox Code Playgroud)

你怎么看待这件事?你觉得它有什么坏处吗?还有其他办法吗?我怎样才能让它变得更好?我应该在这种情况下寻找另一种解决方案吗?

谢谢.

java caching lazy-loading

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

Android:9补丁重复模式而不是拉伸

我有一个9补丁图像文件,如下所示:

替代文字

当我使用它时,它看起来像这样:

替代文字

我实际想要实现的是中心的完整点重复而不是拉伸.我希望这是可能的.

android nine-patch

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

联盟系统的宝石/插件?

你还记得那里的任何宝石/插件来支持联盟(推荐,合作伙伴)这样的系统吗?

例如37signals 联盟计划

任何帮助/链接将不胜感激.

rubygems ruby-on-rails ruby-on-rails-plugins

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