我只是阅读有关Clojure并发性的各种文档,并在网站(http://clojure.org/concurrent_programming)上提供了相应的示例.
(import '(java.util.concurrent Executors))
(defn test-stm [nitems nthreads niters]
(let [refs (map ref (replicate nitems 0))
pool (Executors/newFixedThreadPool nthreads)
tasks (map (fn [t]
(fn []
(dotimes [n niters]
(dosync
(doseq [r refs]
(alter r + 1 t))))))
(range nthreads))]
(doseq [future (.invokeAll pool tasks)]
(.get future))
(.shutdown pool)
(map deref refs)))
Run Code Online (Sandbox Code Playgroud)
我理解它的作用以及它是如何工作的,但我不明白为什么需要第二个匿名函数fn []?
非常感谢,
dusha.
PS没有这第二个fn []我得到NullPointerException.
我有一个很好的jstree加载数据等等 - 现在我需要让它在你点击一个节点时做点什么.
我已经成功处理了node_select事件,但是有一种简单的方法可以将节点呈现为链接(如在html <a>标签中)吗?
编辑: 看起来jstree节点已经是链接 - 它使用<a>标签以及<li>
我正在使用node.js实现一个webapp并使用jade模板引擎表达.
模板呈现正常,可以访问助手和动态助手,但不能访问"body"局部变量以外的局部变量,该变量由express提供,并且在layout.jade中可用并定义.
这是一些代码:
app.set ('view engine', 'jade');
app.get ("/test", function (req, res) {
res.render ('test', {
locals: { name: "jake" }
});
});
Run Code Online (Sandbox Code Playgroud)
这是test.jade:
p hello
=name
Run Code Online (Sandbox Code Playgroud)
当我删除第二行(引用名称)时,模板正确呈现,在网页中显示"hello"一词.当我包含= name时,它会抛出一个ReferenceError:
500 ReferenceError: Jade:2 NaN. 'p hello' NaN. '=name' name is not defined
NaN. 'p hello'
NaN. '=name'
Run Code Online (Sandbox Code Playgroud)
我相信我正在关注玉,并完全根据局部变量表达例子.我做错了什么,或者这可能是快递或玉器中的错误?
我有这个代码,我正在为大学做.第一个代码按预期工作,第二个代码提供不同的结果.
我看不出他们在做什么不同?
第一:
public Mat3 getNormalMatrix() {
return new Mat3(this.getInverseMatrix()).transpose();
}
Run Code Online (Sandbox Code Playgroud)
第二:
public Mat3 getNormalMatrix() {
Mat4 mat = this.getInverseMatrix();
Mat3 bla = new Mat3(mat);
bla.transpose();
return bla;
}
Run Code Online (Sandbox Code Playgroud) 我正在使用NHibernate与PostgreSQL数据库连接.
背景
我做了一些简单的测试......似乎需要2秒才能坚持300条记录.我有一个具有相同功能的Perl程序,但是发出直接SQL,只占70%的时间.我不确定这是否是预期的.我认为C#/ NHibernate会更快或至少相提并论.
问题
我的一个观察是(show_sql打开),NHibernate发出INSERT几百次,而不是进行处理多行的批量INSERT.请注意我自己分配主键,而不是使用"本机"生成器.
这是预期的吗?反正我是否可以让它发出批量INSERT语句?在我看来,这可能是我可以加速表现的领域之一.
我正在尝试为我的模型编写一些自定义方法但是我收到以下错误:
Attribute Error: 'ForeignRelatedObjectsDescriptor' object has no attribute all|filter
运行此代码时会发生这种情况:
chore = Chore(name='Laundry') chore.schedule_set.create(week_day='monday', time_due='17:30:00') chore.scheduled()
有没有人对如何做这项工作或我可能缺少什么有任何建议?我检查了Django文档,但它们似乎只涵盖了模型的最基本用途.
models.py:
from django.db import models
from datetime import date, timedelta
class ChoreManager(models.Manager):
def by_day(self, week_day):
if week_day == 'today':
week_day = date.today().strftime("%A")
chores = self.filter(week_day=week_day)
if chores.count() > 0:
return chores
else:
return False
def today(self):
return self.by_day(week_day='today')
class Chore(models.Model):
chores = ChoreManager()
name = models.CharField(max_length=50)
notes = models.TextField(null=True)
def scheduled(self, week_day=None):
if week_day is None:
schedule_count = Chore.schedule_set.all().count()
else:
if week_day == 'today': … 我对XSL很新,需要帮助解决转换问题.我有一个由XSD描述的XML文件.我使用XSL文件将XML转换为HTML.我想在XML文件中引用XSD,但是当我这样做时,XML不会被转换.
示例XML:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="example.xsl"?>
<root>
<!--
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://localhost" xsi:schemaLocation="http://localhost example.xsd">
-->
<element>Element 1</element>
<element>Element 2</element>
<element>Element 3</element>
</root>
Run Code Online (Sandbox Code Playgroud)
示例XSL:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<ul>
<xsl:for-each select="root/element">
<li><xsl:value-of select="."/></li>
</xsl:for-each>
</ul>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
示例XSD:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://localhost"
xmlns="http://localhost"
elementFormDefault="qualified">
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element name="element" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)
在XML中,如果我使用注释掉的root标签,Firefox和Chrome不会转换xml.但是,如果我只使用普通的<root>标签,那么转换就可以了.
任何人都可以解释为什么在我的XML中引用XSD时不会发生XSL转换?任何帮助表示赞赏!
我想让我的可编辑JTable中的编辑器在开始编辑时选择单元格中的所有文本.我尝试了一些事情,都围绕从TableCellEditor.getTableCellEditorComponent方法返回的组件上调用JTextComponent.selectAll().我尝试过的所有事情都没有.
在我最近的尝试中,我改变了Swing教程中的SimpleTableDemo类,以使用调用selectAll方法的自定义TableCellEditor.在调试器中,我可以看到正在调用selectAll()方法,但是表仍然进入编辑模式而不选择单元格中的文本(或者可能在显示之前清除选择).该代码如下.谁能告诉我哪里出错了?
import javax.swing.DefaultCellEditor;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.JTree;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import javax.swing.text.JTextComponent;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class SimpleTableDemo extends JPanel {
private boolean DEBUG = false;
public SimpleTableDemo() {
super(new GridLayout(1, 0));
String[] columnNames = {"First Name",
"Last Name",
"Sport",
"# of Years",
"Vegetarian"};
Object[][] data = {
{"Kathy", "Smith", "Snowboarding", new Integer(5), new Boolean(false)},
{"John", "Doe", "Rowing", new Integer(3), new Boolean(true)},
{"Sue", …Run Code Online (Sandbox Code Playgroud) 我在编译以下程序时遇到问题
PPConverter.java:
public class PPConverter {
private native void convert(String s);
public static void main(String[] args){
new PPConverter().convert(args[0]);
}
static {
System.loadLibrary("converter");
}
}
Run Code Online (Sandbox Code Playgroud)
converter.c:
#include <jni.h>
#include <stdio.h>
#include "PPConverter.h"
JNIEXPORT void JNICALL Java_PPConverter_convert (JNIEnv *, jobject, jstring){
printf(jstring);
return;
}
Run Code Online (Sandbox Code Playgroud)
由于我在UNIX上工作,我使用以下命令编译converter.c文件:
cc -I/usr/lib/jvm/java-6-openjdk/include converter.c -o libconverter.so
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
converter.c: In function âJava_PPConverter_convertâ:
converter.c:5: error: parameter name omitted
converter.c:5: error: parameter name omitted
converter.c:5: error: parameter name omitted
converter.c:6: error: expected expression before âjstringâ
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么??
eval和exec的等价物是否可以用编译语言存在?如果是这样,他们将如何编译(粗略地说)?