小编hon*_*jde的帖子

如何在本地运行angularjs文档

我编译了最新的angular.js并发现doc中的链接都指向绝对URL angularjs.org/....我希望能够在本地读取doc.

angularjs

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

说明:不要通过共享内存进行通信; 通过沟通分享记忆

我想知道这个着名的引言最真实的解释是什么:

不要通过共享内存进行通信; 通过沟通分享记忆.(R. Pike)

Go Go Memory Model中,我可以读到:

通道上的发送在该通道的相应接收完成之前发生.(Golang Spec)

还有一篇专门的golang文章解释了这句话.而关键的贡献也是Andrew G.的一个实例.

好.有时太多谈论....我从Memory Spec报价中得出,并且通过查看工作示例:

在goroutine1通过通道向goroutine2发送(任何内容)后,goroutine1完成的所有更改(内存中的任何位置)必须在通过相同通道接收到goroutine2后才可见.(Golang Lemma by Me :)

因此,我得出了着名引言的脚踏实地的解释:

要同步两个goroutine之间的内存访问,您不需要通过通道发送该内存.足够好的是从频道接收(甚至没有).您将看到goroutine发送(到频道)时发送的任何更改(在任何地方).(当然,假设没有其他goroutine写入相同的内存.)更新(2)8-26-2017

我实际上有两个问题:

1)我的结论是否正确?

2)我的解释有帮助吗?

更新(1) 我假设没有缓冲的频道.让我们首先限制自己,避免用太多的未知数来改造自己.

请注意,我们还要关注两个goroutine的简单用法,这两个goroutines通过单个通道和相关的记忆效应进行通信而不是最佳实践 - 这超出了本问题的范围.

为了更好地理解我的问题的范围,假设goroutine可以访问任何类型的内存结构 - 不仅是原始的 - 并且它可以是一个大的,它可以是字符串,映射,数组,等等.

memory channel go goroutine

19
推荐指数
5
解决办法
5245
查看次数

Does WaitGroup.Wait() imply memory barrier in this case?

var condition bool
var wg sync.WaitGroup
for _, item := range items {
    wg.Add(1)
    go func(item) {
        if meetsCondition(item) {
            condition = true
        }
        wg.Done()
    }(item)
}
wg.Wait()
// is it safe to check condition here?
Run Code Online (Sandbox Code Playgroud)

There is a discussion of this question at the old go forum here: https://groups.google.com/forum/#!topic/golang-nuts/5oHzhzXCcmM The answer there was yes, it is safe. Then the discussion digress to use of atomic, etc., which is not what I want to ask about.

There is not even …

concurrency go

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

如何在不将 chrome 窗口置于前台的情况下从 cmd (Windows) 打开 chrome 中的链接?

例如,如果我点击 vscode 编辑器中的链接,它不会干扰我当前正在做的事情 - 在不激活 chrome 窗口的情况下打开它。

我想使用以下之一从 Windows 的命令行实现相同的功能:cmd、msys bash、powershell。

回答了类似的问题,但没有前台要求。

windows google-chrome

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

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

angularjs指令中的棘手范围绑定

我想在angularjs中编写'edit in place'指令.我希望该指令是可重用的,因此我对该指令有以下要求:

  1. 它必须是一个可以解散任何元素的地方,这是有道理的(div,span,li)
  2. 它必须支持编辑按钮,单击它将把显示元素设置为输入文件.通常是一个对象的属性,例如联系人(号码,名称)

我在这个小提琴http://jsfiddle.net/honzajde/ZgNbU/1/中可以看到指令中范围可见性的欺骗行为.

  1. 在指令中注释:模板和范围 - > contact.number和contact.name
  2. 在指令中进行注释:仅显示scope - > contact.number
  3. 没有评论任何东西 - >没有显示任何内容

=>当两者都被注释掉时只需将模板添加到指令使得它渲染contact.number即使不使用模板.

我在问游戏的规则是什么?

<div>
  <div ng-controller="ContactsCtrl">
    <h2>Contacts</h2>
    <br />
    <ul>
        <li ng-repeat="contact in contacts">
            <span edit-in-place="" ng-bind="contact.number"></span> | 
            <span edit-in-place="" >{{contact.name}}</span>
        </li>
    </ul>
    <br />
    <p>Here we repeat the contacts to ensure bindings work:</p>
    <br />
    <ul>
        <li ng-repeat="contact in contacts">
            {{contact.number}} | {{contact.name}}
        </li>
    </ul>

  </div>
</div>


var app = angular.module( 'myApp', [] );

app.directive( 'editInPlace', function() {
  return {
    restrict: …
Run Code Online (Sandbox Code Playgroud)

angularjs

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