javascript

java

python

c#

node.js

android

reactjs

c++

php

jquery

html

css

git

ruby-on-rails

.net

ios

sql

c

string

ruby

时间是什么时候uint8_t≠unsigned char?

根据C和C ++,CHAR_BIT >= 8
但是无论何时uint8_tunsigned char甚至都不能表示为8位。
它必须更大,因为CHAR_BIT是系统上任何数据类型的最小位数。

uint8_t上可以合法定义为哪种类型的系统,而不是unsigned char

(如果C和C ++的答案不同,那么我想两者都知道。)

trans by 2019-10-15T13:53:21Z

reactjs - 阵营renderToString()性能和缓存反应的组分

我注意到,在服务器上渲染大型组件树时,25704277710801080147968方法开始显着减慢速度。

背景

有点背景。 该系统是完全同构的堆栈。 最高级别的clientLoaded组件呈现模板,页面,dom元素和更多组件。 查看一下React代码,我发现它呈现了约1500个组件(这包括被视为简单组件的任何简单dom标签true

在开发中,渲染〜1500个组件大约需要200-300ms。 通过删除一些组件,我能够在约175-225毫秒内获得约1200个组件以进行渲染。

在生产中,大约1500个组件上的renderToString大约需要50-200ms。

时间确实是线性的。 没有任何一个要素是缓慢的,而是许多要素的总和。

问题

这在服务器上产生了一些问题。 冗长的方法导致服务器响应时间长。 TTFB比应有的要高得多。 使用api调用和业务逻辑,响应应该为250毫秒,但是使用250毫秒的renderToString时,响应会加倍! 对SEO和用户不利。 另外,作为一种同步方法,clientLoaded可以阻止节点服务器并备份后续请求(这可以通过使用2个单独的节点服务器来解决:1个作为Web服务器,而1个作为仅提供反应的服务)。

尝试

理想情况下,生产中的renderToString需要5-50ms。 我一直在研究一些想法,但我不确定最好的方法是什么。

想法1:缓存组件

任何标记为“静态”的组件都可以缓存。 通过保留具有渲染标记的缓存,clientLoaded可以在渲染之前检查缓存。 如果找到一个组件,它将自动获取字符串。 在较高级别的组件上执行此操作将节省所有嵌套子组件的安装。 您将不得不用当前的rootID替换缓存的组件标记的react rootID。

理念2:将组件标记为简单/哑巴

通过将组件定义为“简单”,react应该能够在渲染时跳过所有生命周期方法。 React已经为核心React dom组件(clientLoadedtrue等)执行了此操作。 扩展自定义组件以使用相同的优化会很好。

理念3:跳过服务器端渲染上的组件

不需要服务器返回的组件(无SEO值)可以在服务器上直接跳过。 客户端加载后,将clientLoaded标志设置为true,并将其传递下来以强制重新渲染。

结案及其他尝试

到目前为止,我唯一实现的解决方案是减少服务器上呈现的组件数量。

我们正在研究的一些项目包括:

  • React-dom-stream [https://github.com/aickin/react-dom-stream](仍在为测试实现此工作)
  • Babel内联元素[https://babeljs.io/docs/plugins/transform-react-inline-elements/](似乎类似于想法2)

有人遇到过类似的问题吗? 你能做什么?谢谢。

trans by 2019-10-15T13:48:08Z

在J内部使用Python

可能重复:
Java Python集成

我有一个使用100%Java编写的大型现有代码库,但是我想在它的一些新部分中使用Python。 我需要进行一些文本和语言处理,而我宁愿使用Python和类似NLTK的库来执行此操作。

我知道Jython项目,但这似乎代表了一种从Python内部使用Java及其库的方法,而不是相反的方式-我对此是否错?

如果没有,那么在Java和Python之间进行交互的最佳方法是什么,这样(理想情况下)我就可以在Python中调用方法并将结果返回给Java?

谢谢。

trans by 2019-10-15T13:40:22Z

python-Flask和uWSGI-无法加载应用0(mountpoint ='')(找不到可调用或导入错误)

尝试使用uWSGI启动Flask时出现以下错误。这是我的开始方式:

>  # cd ..
>     root@localhost:# uwsgi --socket 127.0.0.1:6000 --file /path/to/folder/run.py --callable app -  -processes 2

这是我的目录结构:

-/path/to/folder/run.py
      -|app
          -|__init__.py
          -|views.py
          -|templates
          -|static

/path/to/folder/app/__init__.py的内容

if __name__ == '__main__':
   from app import app
   #app.run(debug = True)
   app.run()

/path/to/folder/app/__init__.py的内容

import os
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.login import LoginManager
#from flaskext.babel import Babel
from config import basedir
app = Flask(__name__)
app.config.from_object('config')
#app.config.from_pyfile('babel.cfg')

db = SQLAlchemy(app)
login_manager = LoginManager()
login_manager.setup_app(app)
login_manager.login_view = 'login'
login_manager.login_message = u"Please log in to access this page."

from app import views

*** Operational MODE: preforking ***
unable to find "application" callable in file /path/to/folder/run.py
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (pid: 26972, cores: 1)
spawned uWSGI worker 2 (pid: 26973, cores: 1)
trans by 2019-10-15T13:37:59Z

从Python中的字符串中提取日期

如何从“ monkey 2010-07-10 love banana”之类的字符串中提取日期? 谢谢!

trans by 2019-10-15T13:32:52Z

iPhone-如何使UITableView上的单元格不可选择?

我有一个单元格要插入到UITableView的顶部。 如何确保当用户单击单元格时,它没有显示蓝色的选定指示器?

trans by 2019-10-15T13:26:44Z

正则表达式任何ASCII ch

匹配xxx[(\w)(\W)(\s)]+xxx的正则表达式是什么?

我正在尝试xxx[(\w)(\W)(\s)]+xxx,但它似乎不起作用。

trans by 2019-10-15T13:22:38Z

创建空的conda环境

我可以使用程序biopython创建一个新的conda环境:

conda create --name snowflakes biopython

如果我不想安装任何程序怎么办? 看来我做不到:

» conda create --name tryout
Error: too few arguments, must supply command line package specs or --file

You can specify one or more default packages to install when creating
an environment.  Doing so allows you to call conda create without
explicitly providing any package names.

To set the provided packages, call conda config like this:

    conda config --add create_default_packages PACKAGE_NAME
trans by 2019-10-15T13:20:20Z

异常-片段已经起作用

我有一个片段;

MyFragment myFrag = new MyFragment();

我将捆绑数据放入该片段:

Bundle bundle = new Bundle(); 
bundle.putString("TEST", "test");
myFrag.setArguments(bundle);

然后,我用这个替换旧的片段并放回栈中:

//replace old fragment
fragmentTransaction.replace(R.id.fragment_placeholder, myFrag, "MyTag");
//put on backstack
fragmentTransaction.addToBackStack(null);
//commit & get transaction ID
int transId = fragmentTransaction.commit();

稍后,我弹出带有上述交易ID(myFrag)的堆栈:

//pop the transaction from backstack
fragmentManager.popBackStack(transId,FragmentManager.POP_BACK_STACK_INCLUSIVE); 

稍后,我再次将bundle数据设置为片段的参数(myFrag):

//Got Java.lang.IllegalStateException: fragment already active
myFrag.setArguments(bundle);

如您所见,我上面的代码有异常myFrag。 我不明白为什么myFrag虽然仍从后台弹出事务,但为什么仍保持活动状态。无论如何,由于我遇到了异常,所以我认为除了使该片段无效之外,别无选择,所以,我做到了:

Fragment activeFragment = fragMgr.findFragmentByTag("MyTag");
fragmentTransaction.remove(activeFragment);

我不确定上面的代码是否真的可以停用该片段,因为我没有找到如何停用该片段。 :(

之后,当我再次尝试将捆绑数据设置为片段myFrag时,仍然出现相同的错误:

Java.lang.IllegalStateException: fragment already active

似乎即使我删除了片段,它仍然处于活动状态...为什么? 如何停用片段?

trans by 2019-10-15T13:14:49Z

Jenkins如何建立时间表?

如何安排Jenkins构建,使其只能在每天的特定时间构建?

例如从下午4点开始

0 16 1-7 * *

我的理解是:0分钟,每个月的星期一至星期日下午4点,但是它每分钟生成一次:(

如有任何建议,我将不胜感激。 谢谢!

trans by 2019-10-15T13:06:40Z

python-发送包含嵌入式图像的多部分html电子邮件

我一直在使用python中的email模块,但是我希望能够知道如何嵌入html中包含的图像。

因此,例如,如果身体像

<img src="../path/image.png"></img>

我想将image.png嵌入到电子邮件中,并将src属性替换为content-id。有人知道该怎么做吗?

trans by 2019-10-15T13:04:08Z

为什么32位整数使用32次以上时,左移位“ <<”不按预期工作?

当我编写以下程序并使用GNU C ++编译器时,输出为1,我认为这是由于编译器执行的旋转操作所致。

#include <iostream>

int main()
{
    int a = 1;
    std::cout << (a << 32) << std::endl;

    return 0;
}

但是从逻辑上讲,正如人们所说的,如果这些位溢出位宽会丢失,则输出应为0。这是怎么回事?

该代码位于ideone上,[http://ideone.com/VPTwj。]

trans by 2019-10-15T12:55:40Z

检查Bash数组中是否存在元素

我想知道是否有一种有效的方法来检查Bash数组中是否存在元素? 我正在寻找类似于Python的功能:

arr = ['a','b','c','d']

if 'd' in arr:
    do your thing
else:
    do something

我见过针对Bash 4+使用针对bash的关联数组的解决方案,但是我想知道是否还有其他解决方案。

请理解,我知道微不足道的解决方案是在数组中进行迭代,但是我不希望这样。

trans by 2019-10-15T12:50:14Z

CSS-设定Google Maps Container DIV宽度和高度100%

我加载了Google Maps API v3,并在div中打印了Google Map。但是,当将width&height设置为100%并且是auto时,我看不到地图。

这是HTML代码段。

<!-- Maps Container -->
<div id="map_canvas" style="height:100%;width:100px;margin:0 auto;"></div>

有没有解决此问题的方法?

trans by 2019-10-15T12:43:01Z

r-多个变量的unique()

我在R中有以下数据框:

> str(df)
'data.frame':   545227 obs. of  15 variables:
 $ ykod : int  93 93 93 93 93 93 93 93 93 93 ...
 $ yad  : Factor w/ 42 levels "BAKUGAN","BARBIE",..: 30 30 30 30 30 30 30 30 30 30 ...
 $ per  : Factor w/ 3 levels "2 AYLIK","3 AYLIK",..: 3 3 3 3 3 3 3 3 3 3 ...
 $ donem: int  201101 201101 201101 201101 201101 201101 201101 201101 201101 201101 ...
 $ sayi : int  201101 201101 201101 201101 201101 201101 201101 201101 201101 201101 ...
 $ mkod : int  4 5 9 11 12 18 20 22 25 26 ...
 $ mad  : Factor w/ 10464 levels "   Defne Market          ",..: 405 8075 9710 10145 9297 7973 2542 3892 2759 5769 ...
 $ mtip : Factor w/ 29 levels "Abone Bürosu                                      ",..: 2 20 20 2 2 2 2 2 2 2 ...
 $ kanal: Factor w/ 2 levels "OB","SS": 2 2 2 2 2 2 2 2 2 2 ...
 $ bkod : int  110565 110565 110565 110565 110565 110565 110565 110565 110565 110565 ...
 $ bad  : Factor w/ 212 levels "4. Levent","500 Evler",..: 167 167 167 167 167 167 167 167 167 167 ...
 $ bolge: Factor w/ 12 levels "Adana Şehiriçi",..: 7 7 7 7 7 7 7 7 7 7 ...
 $ sevk : int  2 3 3 3 2 2 2 6 2 2 ...
 $ iade : int  2 1 0 2 0 2 1 0 0 2 ...
 $ satis: int  0 2 3 1 2 0 1 6 2 0 ...

我想为选定的多个变量列出唯一的(如SQL的DISTINCT)值。 例如,unique(yad)为我提供了每个42个元素的名称,但是我需要提取两列(yadper在一起,并具有所有唯一的组合):

yad           per
---           ---
BARBIE        AYLIK
BAKUGAN       2 AYLIK
MICKEY MOUSE  2 AYLIK
TINKERBELL    3 AYLIK
...           ...

我怎样才能做到这一点?

trans by 2019-10-15T12:40:29Z

angular-将参数传递到路径防护中

我正在开发一个具有很多角色的应用程序,我需要使用这些功能来根据这些角色阻止导航到应用程序的各个部分。 我意识到我可以为每个角色创建单独的后卫类,但宁愿拥有一个可以以某种方式将参数传递给它的类。 换句话说,我希望能够执行以下操作:

{ 
  path: 'super-user-stuff', 
  component: SuperUserStuffComponent,
  canActivate: [RoleGuard.forRole('superUser')]
}

但是,由于您通过的只是警卫的类型名称,因此无法考虑实现此目的的方法。 我是否应该只是硬着头皮,为每个角色编写单独的后卫班级,而打乱我拥有单个参数化类型的优雅幻想呢?

trans by 2019-10-15T12:36:34Z

f#-将选项类型列表压缩为仅包含非不包含元素的最佳方法?

我出乎意料地遇到麻烦,从“选项”列表转到仅包含“某些”元素的列表。

我最初的尝试是:

    let ga = List.filter (fun xx ->
        match xx with
        | Some(g) -> true
        | None -> false) gao 

但是,当然,此结果类型仍然是“选项列表”。 我不知道如何使用List.map来压缩它,因为您必须在match语句中处理所有情况。 我有一个丑陋的解决方案,但我想知道是否还有更好的解决方案。

丑陋:

    let rec gOptRemove gdec gacc = 
        match gdec with 
        | head :: tail -> 
            match head with 
            | Some(a) -> gOptRemove tail (a :: gacc)
            | None -> gOptRemove tail gacc
        | [] -> gacc

我宁愿找到一种非递归解决方案,或者找出这种事情的标准方法。

trans by 2019-10-15T12:35:05Z

java-ExecutorService中的活动线程

有任何想法如何确定2570352218897897592中当前正在运行的活动线程数吗?

trans by 2019-10-15T12:30:40Z

用Vim括在括号中

有没有办法在vim中的括号(或大括号)中包含一些文本?

换句话说,您将如何做?

初始字符串:

It is sunny outside.

最终字符串:

It is (sunny) outside.

有趣的是,我刚刚打:w提交了这个问题。

祝您生日快乐,SOCommunity!

trans by 2019-10-15T12:18:21Z

为什么我不能在javascript中向字符串对象添加属性?

我继承了其他开发人员编写的一些JavaScript代码。 他不喜欢我们在整个项目中使用的网格组件,因此他决定编写自己的网格组件。 他编写的网格无法对日期进行排序,因为它只能绑定到字符串/数字。 他在使用日期之前将所有日期转换为字符串。 我查看了他编写的date函数的字符串格式,并认为我可以将一个date属性添加到具有原始值的字符串中,然后在进行排序时查看该字符串是否具有date属性并基于此进行排序。 但是,似乎无法将属性添加到javascript中的字符串。 我不知道某些类型无法添加属性。 例如:

<html>
<script>
var test = "test";
test.test = "test inner";
console.log(test);
console.log(test.test);
</script>

test.test将是不确定的。 奇怪的。 我的问题是为什么此代码不起作用? 而且,如果您能想到在该网格上对日期进行排序的任何变通方法(除了实际上绑定到日期对象而不是字符串,这将很麻烦解决),这将非常有用。

trans by 2019-10-15T12:14:00Z

上一页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共2511页