问题列表 - 第17353页

英特尔刚刚推出了一款新的48核CPU.对于我们的程序员来说,这会转移到许多核心意味着什么呢?

英特尔刚刚推出了新的48核CPU("Intel显示48核x86处理器作为单芯片云计算机",作者Ryan Shrout,2009年12月2日;芯片是"单芯片云计算机",也称班加罗尔).这个新架构不仅仅是内核的数量,似乎还引入了许多有趣的功能,例如:

事情变得有趣 - 英特尔表示他们已经删除了硬件缓存一致性,这实际上意味着每个"磁贴"将完全独立于它存储在本地L2缓存中的内容.因此,核心和瓦片之间的所有高速缓存通信将由网格数据通信系统和每个瓦片上的专用"消息缓冲器"处理.

这些新架构对我们程序员意味着什么?我们如何解决tomorow CPU的复杂性?

parallel-processing cpu cpu-architecture

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

关于框架设计的建议

我正在为一个项目构建某种迷你框架,并提出这个解决方案.我尝试了很多,但在我看来这非常方便(代码简化为了简化):

# Basically it's just a Registry pattern    
    class Repository {
        private static $objects = array();

        public function loadObject($alias, $object) {
            self :: $objects[$alias] = $object;
            return true;
        }

        public function __get($name) {
            if ($this->objectExists($name)) {
                return self::$objects[$name];
            } else {
                return false;
            }
        }
    }

    class Database extends Repository {
        /* database class */
    }

    class Session extends Repository {
        public function some_func($key, $value) {
            /* i can access database object using $this in any class that extends Repository …
Run Code Online (Sandbox Code Playgroud)

php frameworks design-patterns

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

添加到Dictionary的不同方式

是什么在差异Dictionary.add(key, value)Dictionary[key] = value

我注意到最后一个版本ArgumentException在插入重复密钥时没有抛出,但有没有理由更喜欢第一个版本?

编辑:有没有人有权威的信息来源?我尝试过MSDN,但它一如既往的野鹅追逐:(

c# optimization dictionary

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

使Equals成为常用方法的目的是什么?

这不是一个如何实现它的问题,但这个方法的目的是什么?我的意思是 - 好吧,我知道在搜索时需要它,但为什么它被埋没为"对象"类的方法?

故事发生了 - 我有一些类,默认情况下(逻辑意义上)对象不具有可比性.每次要比较/搜索它们时,都必须准确指定匹配方式.在这种情况下最好的是:

  1. 没有像Equals这样无处不在的方法,问题解决了,没有程序员(我班级的用户)会因为在搜索时省略自定义匹配而陷入陷阱

    但既然我无法改变C#

  2. 隐藏继承的,不需要的方法来阻止调用(编译时)

    但这也需要改为C#

  3. override Equals并抛出异常 - 至少在运行时通知程序员

所以我问,因为我被迫丑陋(c),因为(b)是不可能的,因为缺乏(a).

简而言之 - 迫使所有对象具有可比性(Equals)的原因是什么?对我来说,这是一个过分的假设.提前感谢您的启示:-).

c# language-design

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

事件驱动与顺序编程

我的一位朋友最近在他的团队中争论过事件驱动编程与顺序编程的优缺点.

你对此有何看法?

event-driven-design

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

有没有办法简化这个jquery?

我写了一个下面的结构下拉菜单.它应该在点击时下拉,并在点击时关闭.

这是HTML

<ul id="nav" class="nav">
    <li>
        <a id="menu1" class="menu">MENU 1</a> <!-- top menu -->
        <div id="submenu1" class="submenu"> <!-- hidden by default -->
            <a href="#">SUBMENU ITEM 1</a> <!-- submenu item -->
            <a href="#">SUBMENU ITEM 2</a>
        </div>
    </li>

    <li>
        <a id="menu2" class="menu">MENU 2</a>
        <div id="submenu2" class="submenu">
            <a href="#">SUBMENU ITEM 1</a>
            <a href="#">SUBMENU ITEM 2</a>
            <a href="#">SUBMENU ITEM 2</a>
        </div>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

这就是JavaScript(使用jQuery)

$("#menu1").click(function() {
    $("div.submenu").hide(); // hide all menus
    $("#submenu1").toggle(); // open this menu
});
$("#menu2").click(function() {
    $("div.submenu").hide(); // hide all menus …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

自动递增ID MYSQL 5的Hibernate问题

所以,我只是站起来一个Spring Hibernate应用程序,我似乎无法正确获取我的映射文件.我正在使用MySql 5和一个自动递增键.这是我的映射文件的ID部分.

<hibernate-mapping>
     <class name="org.XXXXXXX.Contact" table="contact">
        <id name="id" column="id" type="int" unsaved-value="null">
            <generator class="native" />
        </id>
Run Code Online (Sandbox Code Playgroud)

这是SQL生成的

插入联系人(title,first_name,middle_name,last_name,suffix,job_title,dob,passport_number,passport_expiration,employer,dietary_restrictions,secondary_contact_fname,secondary_contact_lname,secondary_contact_mname,secondary_contact_title,secondary_contact_suffix,secondary_contact_job_title,emergency_contact_name,emergency_contact_phone,emergency_contact_notes,is_company)值(?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)

这是堆栈跟踪的重要部分:

org.hibernate.AssertionFailure:org.XXXXXXX.Contact条目中的null id(发生异常后不刷新会话)

我已经尝试将unsaved-value设置为"0"和"-1"并通过线路发送它们.关于我做错了什么的任何想法?

mysql hibernate

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

编译LINQ查询和DataLoadOptions ...扭曲!

我知道这里讨论的方法:

解决Linq to Sql中针对高需求ASP.NET网站的编译查询的常见问题

...但这对我的情况不起作用,因为我得到了:

"从查询返回结果后,不允许设置加载选项."

我使用Codesmith PLINQO脚本生成实体和管理器代码,管理器代码如下所示:

public partial class SearchManager
{       
    #region Query
    // A private class for lazy loading static compiled queries.
    private static partial class Query
    {
        internal static readonly Func<MyDataContext,IOrderedQueryable<Search>> 
            GetAll = CompiledQuery.Compile(
                (MyDataContext db) =>
                from s in db.Search
                orderby s.Name
                select s);
    } 
    #endregion


    public IQueryable<Search> GetAll()
    {
        return Query.GetAll(Context);
    }
}
Run Code Online (Sandbox Code Playgroud)

我首先尝试将静态DataLoadOptions拖放到Searchmanager类中,如下所示:

public static readonly DataLoadOptions MyOptions = 
    (new Func<DataLoadOptions>(() =>
    {
        var option = new DataLoadOptions();
        option.LoadWith<Search>(x => x.Rule);
        return option; …
Run Code Online (Sandbox Code Playgroud)

c# linq loadoptions compiled-query

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

如何保持干爽?不要重复自己!

我发现软件开发最令人沮丧的方面之一就是找到问题的解决方案,忘记它,然后在将来遇到同样的问题而忘记你以前如何解决它.或者编写一些有用的代码,然后在以后的项目中找不到这段代码.

我的一般问题是:如何在编程时跟踪每天学到的所有新内容?有没有人有系统的方法来捕捉知识,并在将来轻松有效地应用它?

更新:感谢您的回复,以下是您提出的建议:

社会

  • 堆栈溢出
  • tumblr
  • 推特
  • Evernote的
  • 博客/维基

代码存储库

  • Github上
  • Unfuddle
  • 发射台
  • 谷歌代码

桌面

  • Dropbox的
  • Yojimbo(mac)
  • VoodooPad(mac)
  • Wikidpad(赢)
  • Surfulater

agile project-management organization

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

从有条件的旧词典中得到新的词典?

我是一本字典(字典字典)

    old_dict = {
    '1':{'A':1, 'check': 0, 'AA':2, 'AAA':3 , 'status':0},
    '2':{'A':11,'check': 0, 'AA':22, 'AAA':33 ,'status':1},
    '3':{'A':111,'check': 0, 'AA':222, 'AAA':333 ,'status':0},
    '4':{'A':1111,'check': 1, 'AA':2222, 'AAA':3333 ,'status':0},
    }
Run Code Online (Sandbox Code Playgroud)

我想在['check']!= 0之前和['status']之前得到一本新词典!= 0所以将会是

    new_dict = {
    '1':{'A':1, 'check': 0, 'AA':2, 'AAA':3 , 'status':0},
    '3':{'A':111,'check': 0, 'AA':222, 'AAA':333 ,'status':0},
    }
Run Code Online (Sandbox Code Playgroud)

如果是列表,我确实喜欢这个

    ouputdata = [d for d in data if d[1] == ' 0' and d[6]==' 0']
Run Code Online (Sandbox Code Playgroud)

我试过了

for field in old_dict.values():
       if field['check'] !=0 and field['status'] != 0
          line = field['A'] + field['AA']+field['AAA']
         #write …
Run Code Online (Sandbox Code Playgroud)

python dictionary

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