小编Rob*_*een的帖子

在ps -l中,wchan = stext是什么意思?

当我尝试微调我的过程时,我发现等待频道是stext,这是什么意思?

linux scheduling

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

从PHP应用程序通过网络打印

我有一组打印机通过网络连接,并为每台打印机分配静态IP.

现在我有一个在Linux服务器上运行的PHP Web应用程序需要通过网络向这些打印机发送打印作业.

这可能是使用lpr或杯子,我该怎么做呢.

php linux printing cups network-printers

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

无法在Eclipse中调试Maven集成测试

我在Win XP上使用Eclipse Indigo,使用Maven 3.0.3.我已经创建了一个Selenium 2测试,我希望在Eclipse中进行调试.它设置为在Maven集成测试阶段运行.我正在使用Maven Cargo插件和Tomcat作为容器.这是我的pom.xml中的相关部分......

        <plugin>
            <groupId>org.codehaus.cargo</groupId>
            <artifactId>cargo-maven2-plugin</artifactId>
            <configuration>
                <container>
                    <containerId>tomcat${tomcat.major}x</containerId>
                    <zipUrlInstaller>
                        <url>http://archive.apache.org/dist/tomcat/tomcat-${tomcat.major}/v${tomcat.version}/bin/apache-tomcat-${tomcat.version}.tar.gz</url>
                        <downloadDir>${project.build.directory}/downloads</downloadDir>
                        <extractDir>${project.build.directory}/extracts</extractDir>
                    </zipUrlInstaller>
                    <output>${project.build.directory}/tomcat${tomcat.major}x.log</output>
                    <log>${project.build.directory}/cargo.log</log>
                </container>
                <configuration>
                    <home>${project.build.directory}/tomcat-${tomcat.version}/container</home>
                    <properties>
                        <cargo.logging>high</cargo.logging>
                        <cargo.servlet.port>8080</cargo.servlet.port>
                    </properties>
                </configuration>
            </configuration>
            <executions>
                <execution>
                    <id>start-container</id>
                    <phase>pre-integration-test</phase>
                    <goals>
                        <goal>start</goal>
                        <goal>deploy</goal>
                    </goals>
                    <configuration>
                        <deployer>
                            <deployables>
                                <deployable>
                                    <groupId>${project.groupId}</groupId>
                                    <artifactId>${project.artifactId}</artifactId>
                                    <type>war</type>
                                    <pingURL>http://localhost:8080/${project.artifactId}</pingURL>
                                    <pingTimeout>30000</pingTimeout>
                                    <properties>
                                        <context>${project.artifactId}</context>
                                    </properties>
                                </deployable>
                            </deployables>
                        </deployer>
                    </configuration>
                </execution>
                <execution>
                    <id>stop-container</id>
                    <phase>post-integration-test</phase>
                    <goals>
                        <goal>stop</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <!-- Skip the normal tests, we'll run them in the integration-test phase -->
                <skip>true</skip> …
Run Code Online (Sandbox Code Playgroud)

eclipse selenium maven-2 maven

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

sbt 0.11:使用公司maven存储库

如何使用sbt 0.11.x来使用公司Maven存储库(排除其他存储库),如我如何让sbt使用本地maven代理存储库(Nexus)中所述?ivyRepositories在github的新sbt wiki中没有提到,所以我假设已经过时的解决方案已经过时了.

maven sbt

9
推荐指数
2
解决办法
6983
查看次数

显示Scala表达式的推断类型

如何查看Scala编译器为表达式等推断的类型?我有一些复杂的类型推断和隐式转换的代码,很难通过阅读代码看到发生了什么.

我试过添加

scalacOptions in Compile += "-Xprint-types"
Run Code Online (Sandbox Code Playgroud)

在build.sbt中,但这没有任何效果.

直接使用scalac并不是很吸引人,因为我有很多依赖项.

我使用Eclipse Scala插件和ENSIME编写代码,使用SBT构建.

eclipse scala sbt

9
推荐指数
2
解决办法
541
查看次数

在共享IORef时,只要我使用atomicModifyIORef编写,使用readIORef读取是否安全?

如果我IORef在多个线程之间共享,并使用atomicModifyIORef写入它:

atomicModifyIORef ref (\_ -> (new, ()))
Run Code Online (Sandbox Code Playgroud)

用普通的旧版读取价值是否安全readIORef?或者有可能readIORefatomicModifyIORef修改后在另一个线程中返回旧值吗?

我认为这就是文档所暗示的:

atomicModifyIORef充当重新排序的障碍.多个atomicModifyIORef操作以严格的程序顺序发生.在任何早期(在程序顺序中)IORef操作之前,或在任何后来的IORef操作之后,都不会发现atomicModifyIORef.

我只是想确定一下.

haskell thread-safety ioref

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

在git log中使用路径通配符

我的git树中有一个文件:

$ git ls-files | grep /Expression.java
sm/src/main/java/cl/utilities/sm/Expression.java
Run Code Online (Sandbox Code Playgroud)

我想得到它的活动日志,而不必输入整个路径.基本上我想要这个输出:

$ git log --oneline -2 sm/src/main/java/cl/utilities/sm/Expression.java
2718cdc cleaned up some warnings
f30cf15 Added missing @Overrides
Run Code Online (Sandbox Code Playgroud)

......但无需打字sm/src/main/java/cl/utilities/sm.我尝试了很多东西,但没有一个有效:

$ git log -- \*/Expression.java
$ git log -- \*Expression.java
$ git log -- \*\*/Expression.java
$ git log -- '*/Expression.java'
$ git log -- '**/Expression.java'
Run Code Online (Sandbox Code Playgroud)

git wildcard git-log

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

如何在Elm中动态创建输入?

我想创建一个按钮,当按下该按钮时,会向表单添加一个新输入(或textarea).

functional-programming frp elm

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

HList的证据保留LUB约束

我想我需要一个受限制的HList,它的所有元素都是某种类型的子类型.LUBConstraint似乎是我想要的,事实上它确实限制了这样一个HList 的构造 - 但是我看不出如何再次获取证据,所以我可以映射(实际上,遍历,因为它需要是monadic)在HList上并调用每个元素上的方法(存在于LUB类型中).

另外,我希望从遍历操作得到的HList的类型与输入HList的类型完全相同.

用例是一种功能性的"监听器列表" - HList的所有元素都是"监听器",必须通知"事件",接受或拒绝它们,并返回更新的"内部状态"的新版本.如果这就是我所需要的,那么我可以使用普通的不可变Scala集合.但我也希望直接键入单个元素而不使用asInstanceOf- 因此尝试使用HList的动机.

scala hlist shapeless

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

atomicModifyIORef的额外结果参数的目的是什么?

签名modifyIORef很简单:

modifyIORef :: IORef a -> (a -> a) -> IO ()
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不是线程安全的.有一个替代方案可以解决这个问题:

atomicModifyIORef :: IORef a -> (a -> (a,b)) -> IO b
Run Code Online (Sandbox Code Playgroud)

这两个功能之间到底有什么区别?b在修改IORef可能从另一个线程读取的参数时,我应该如何使用该参数?

concurrency haskell global-state ioref

9
推荐指数
2
解决办法
268
查看次数