标签: theory

有多少可能的错误?

用户必须完成十个步骤才能获得所需的结果.十步可以按任何顺序完成.

如果存在错误,则错误仅取决于已采取的步骤,而不取决于它们采取的顺序(即错误与路径无关).

例如:如果用户按照顺序10,1,2执行三个步骤并产生错误,则如果用户按顺序1,2,10执行相同的三个步骤,则会产生完全相同的错误.

这个程序可以拥有的唯一错误的最大数量是多少?

theory

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

Java防御副本

我见过像这样编码的防御性副本

void someMethod(Date d) {
    myDate = new Date( d.getTime() );
}
Run Code Online (Sandbox Code Playgroud)

但这对我来说没有意义,在Java中是否有办法在该对象的内存中创建相同的副本?

我已经读过clone()不会在所有情况下都行不通,但我不明白为什么.

java theory defensive-programming

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

PHP - 在静态站点上创建搜索

我有一个站点,后端没有DB,但有一天可能有一个.我目前需要能够从主页搜索我现有的网站.我的第一个问题是搜索仅包含静态页面的网站是个好主意吗?

我希望以某种方式利用谷歌这样做,所以我不必编写自己的算法或任何东西.该网站完全由谷歌索引,所以我认为这足以暂时.我想将谷歌搜索的结果渲染回我的模板化页面.这又是可能的,这是一个好主意吗?

任何建议都会很棒.我知道用现在的数据库搜索一个站点似乎是多余的,但我的用户群可能不是非常精确的计算机,任何有助于他们获得所需信息的东西都是有利的.谢谢你的建议.

php theory

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

运行监控MySQL的"无休止"过程的最佳方法?

我有一个必须针对某些事情运行的进程,并且不适合在用户端运行(处理时间超过15秒)所以我考虑使用cron作业但是再次,这也不合适,因为它会创建回来的日志.我已经缩小了我的选择,要么运行一个监视mysql更改的无限进程,要么在检测到更改时配置mysql来触发脚本,但后者不是我想要进入的东西,除非它是我唯一的选择,这让我失望"无尽的"监控选项.

我正在考虑使用PHP的那种东西是:

while (true) {
  $db->query('SELECT * FROM database');
  while($row = $db->fetch_assoc()){
    // do the stuff here
  }
  sleep(5);
}
Run Code Online (Sandbox Code Playgroud)

然后通过命令行运行它.现在这在理论上是合理的,实际上它并没有像我希望的那样好,使用的资源超出了我的预期(但不是超出我的范围,只是不是我的最佳目标).所以我的问题如下:

  1. PHP是错误的语言吗?PHP是我的工作,但我知道有时候这是错误的选择,我想也许这是.如果是,我应该使用什么语言?

  2. 有没有更好的方法,我没有考虑过,这不是我列出的任何想法?

  3. 如果PHP是正确的选项,我如何优化我发布的代码,是否有一种方法比每次完成操作后休眠5秒更好?

提前致谢!我对任何想法持开放态度,只要它们在那里不太远,我正在自由运行我自己的服务器,所以对我能做的事情没有理论上的限制.

php database theory

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

应用程序不使用100%的CPU

当我运行我在一台机器上编写的应用程序,Windows 7 Professional 32位SP 1时,它运行得很好并且在系统中使用100%的CPU.

但是,当我在Windows Server 2008上运行相同的应用程序时,我没有看到100%的CPU使用率.

为什么它不使用100%的CPU,我怎么能这样做呢?

theory performance profiling cpu-usage

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

Doctrine Custom Repository vs Entity Methods最佳实践

您可以使用实体方法遍历实体,并且您可以使用实体存储库完全相同,不同之处在于您将创建额外的类并将其附加到实体,并且存储库也会对其他开发人员产生某种混淆以了解是否某种方法可用,他们需要检查实体和存储库.

还有其他区别吗?使用自定义存储库有什么好处?或者处理这种情况的最佳做法是什么?

theory doctrine-orm

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

了解并发和GPU作为有限资源

借助CPU和内存,操作非常简单。

进程具有较大的虚拟地址空间,该地址部分映射到物理内存中。当当前进程尝试访问不在物理内存中的页面时,OS介入,选择要交换的页面(例如,使用Round Robin),将其交换到磁盘中,然后从交换中读取所需的页面,并且控件为回到过程。这很简单,因为如果没有该页面,该过程将无法继续。

GPU内核是另一回事。

让我们考虑一个用例:
一个高优先级[cpu]进程,即X,对内核进行调用(这是一个阻塞调用)。此时,操作系统切换上下文并将CPU分配给另一个进程(即Z)是合理的。举例来说,让进程Z对GPU也做一些繁重的工作。

现在,GPU驱动程序做什么?它是否停止了属于[更高优先级] X的内核?它是否通知OS Z的优先级不足以卸载X的内核?通常,当两个进程需要GPU资源但可用的GPU内存足以一次仅服务其中一个时,会发生什么情况?

theory cuda gpgpu opencl

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

并行流上的skip()是否存在一个好的用例?


2015年9月编辑


当我最初问这个问题,2015年2月,在报道的行为所链接的问题是反直觉的,但那种规范允许(尽管在文档一些小的矛盾).

然而,Tagir Valeev在2015年6月问了一个新问题,我认为他清楚地证明了这个问题中报告的行为实际上是一个错误.Brain Goetz回答了他的问题,并承认,当一个终端操作触发时,不会阻止on 的特性的反向传播是一个错误,这个终端操作不会被迫尊重元素的遭遇顺序(例如) .此外,在他自己的回答的评论中,他分享了JDK的错误跟踪系统中发布的问题链接.UNORDEREDStreamskip()forEach()

该问题的状态现已解决,其修复版本为9,这意味着该修复程序将在JDK9中可用.但是,它也被反向移植到JDK8 update 60,build 22.

所以从JDK8u60-b22开始,这个问题再也没有意义了,因为现在skip()表现得像直觉一样,甚至在并行流上也是如此.


我原来的问题是......


最近我和一些同事讨论了这件事.我说skip()在并行流上使用它是没用的,因为它似乎没有一个很好的用例.他们告诉我有关性能提升,FJ池处理,jvm可用的核心数量等等,但他们无法给我任何实际的使用示例.

skip()并行流是否存在良好的用例?

在这里看到这个问题.请阅读问题和答案以及评论,因为那里有很多好的论据.

theory parallel-processing java-8 java-stream

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

这段代码是否有资格成为Java中的Quine?

这是代码.它基本上从原始代码文件中读取并打印到终端上.

import java.io.*;
public class Quine
{
    static void Quine() throws IOException
    {
        FileReader fr = new FileReader("C:/Quine.java");        
        BufferedReader br = new BufferedReader(fr);
        String s = "";
        while((s = br.readLine()) != null)
        {
           System.out.println(s);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

实际上,它工作正常,产生与输出完全相同的代码.但根据定义,它是否有资格作为quine?考虑到我仍然将文件作为参数传递给它.尽管它是程序员指定的而不是用户输入的输入,它仍被视为输入吗?

java theory quine

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

有什么想法在未来解决浮点数精度问题吗?

我们不能以无限精度存储小数,但可能有某种方式来表示它们就像我们在haskell中表示无限列表一样.

我想到的第一个想法是通过类似于Codata的东西来表示十进制数,因此对于任何给定的自然数k,我们可以将精确的十进制数计算为k位.

但有一些明显的问题,想想数a = 0.333...b = 0.666...,如果我们加在一起,我们得到了ans = 0.999...(数字序列),但我们永远无法知道是否a + b == 1在这种情况下.

我要的是,以某种方式定义十进制数,使之支持+,-,*,/,>,==运营,不管是什么+,-,*,/我们应用到这些十进制数字操作,我们得到新的十进制数,我们可以计算出它们给定任何自然数k精确到k位数.

我想知道:有什么想法可以解决这个问题吗?

theory precision haskell functional-programming codata

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