小编Sco*_*ott的帖子

套接字接受 - "打开文件过多"

我正在开展一个学校项目,我必须编写一个多线程服务器,现在我通过对它运行一些测试来将它与apache进行比较.我正在使用autobench来帮助解决这个问题,但是在我运行一些测试之后,或者如果我给它提供太高的速率(大约600+)来建立连接,我会收到"太多打开文件"的错误.

完成处理请求后,我总是close()在套接字上做一个.我也试过使用这个shutdown()功能,但似乎没有任何帮助.有什么方法吗?

c sockets

57
推荐指数
7
解决办法
13万
查看次数

OpenLayers - 如何从现有的lonLat点绘制多边形?

我在我的数据库中有来自用户定义多边形的经度 - 纬度顶点.我的问题是:如何在地图上重新创建并显示它们?使用Google Maps API非常容易,但我找不到任何有关如何使用OpenLayers执行此操作的文档或示例.有没有人有这方面的经验?

openlayers

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

在Android绘图应用程序中实现橡皮擦 - 黑色轨迹然后透明

我有一个Android的绘图应用程序,我目前正在尝试添加一个真正的橡皮擦.在此之前,我刚刚使用白色涂料作为橡皮擦,但现在我不再使用背景颜色和图像了.我通过透明画布下方的图像视图来完成此操作.

我面临的问题是每当我启用我的橡皮擦时,它会在我用手指向下时画出一条坚实的黑色痕迹,但是一旦我释放它就会变成透明的.请参见下面的屏幕截图:

这是我的手指在屏幕上时的样子 - 一条坚实的黑色小道 当我的手指仍然在屏幕上时,它看起来如何

这是我从屏幕上移开手指后的样子 一旦我放手,它看起来如何

所以,我似乎越来越接近了,但是当我的手指在擦除时触摸时,我无法找到正确的设置组合以避免黑色痕迹.以下是一些相关的代码片段:

的onDraw

@Override
protected void onDraw(Canvas canvas) {
    canvas.drawColor(Color.TRANSPARENT);
    canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
    canvas.drawPath(mPath, mPaint);
    canvas.drawPath(mPreviewPath, mPaint);
}
Run Code Online (Sandbox Code Playgroud)

的onTouchEvent

@Override
public boolean onTouchEvent(MotionEvent event) {
    float currentX = event.getX();
    float currentY = event.getY();

    switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            touchStart(currentX, currentY);
            invalidate();
            break;
        case MotionEvent.ACTION_MOVE:
            touchMove(currentX, currentY);
            invalidate();
            break;
        case MotionEvent.ACTION_UP:
            touchUp(currentX, currentY);
            invalidate();
            break;
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

当前尝试橡皮擦设置

public void startEraser() {
    mPaint.setAlpha(0);
    mColor = Color.TRANSPARENT;
    mPaint.setColor(Color.TRANSPARENT);
    mPaint.setStrokeWidth(mBrushSize);
    mPaint.setStyle(Paint.Style.STROKE);
    mPaint.setMaskFilter(null);
    mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
    mPaint.setAntiAlias(true); …
Run Code Online (Sandbox Code Playgroud)

android android-canvas eraser

16
推荐指数
3
解决办法
8155
查看次数

unison"-repeat watch"无法正常工作

我最近在家用机器(OSX 10.9)和远程服务器(Ubuntu 12.04 64位)上安装了unison.

我在这两个地方安装了2.40.102版本.我在Mac上使用'brew install unison',我在服务器上从源代码编译.

问题是我不能让"重复观察"工作.它连接,但后来什么也没做.

Contacting server...
Connected [//... -> //...]
Run Code Online (Sandbox Code Playgroud)

就是这样.如果我传递任何东西,比如'1'到-repeat旗帜它就可以了.

还有什么我需要做的事情才能让它在变化时观察变化和同步吗?

macos ubuntu sync unison

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

Angular - 绑定到返回promise的函数

我是棱角分明的新手,我很难找到问题的根源.

我正在编写单页应用程序,正在处理身份验证部分.我有一个名为"sessionService"的服务,我希望能够在整个应用程序中使用该服务来确定用户是否已登录.如果我做这样的事情很简单:

...service('sessionService', function(...) { 
    /*...snip...*/
    this.isLoggedIn = function() { 
        return this.authenticated;
     };
});
Run Code Online (Sandbox Code Playgroud)

"经过身份验证"的地方只是服务的私人空间.但是,如果我刷新页面,则会崩溃.所以,我的想法是做这样的事情:

/*...snip...*/
this.isLoggedIn = function() { 
  var deferred = $q.defer()
    , self     = this
    ;

  function handleLoggedInStatus(status) {
    if (status) {
      self.authenticated = true;
      deferred.resolve();
    }
    else {
      deferred.reject();
    }
  }

  if (this.authenticated === null) {
    $http.get('/user')
      .success(function(response) {
        handleLoggedInStatus(response.success);
      });
  }
  else {
    handleLoggedInStatus(this.authenticated);
  }

  return deferred.promise;
};
Run Code Online (Sandbox Code Playgroud)

然后在我的控制器中我会做这样的事情:

$scope.isLoggedIn = sessionService.isLoggedIn;  
Run Code Online (Sandbox Code Playgroud)

在我的模板中,我会这样做:

...data-ng-show="isLoggedIn()"
Run Code Online (Sandbox Code Playgroud)

但是,这样做会导致以下错误:

10 $digest() iterations reached. Aborting!
Run Code Online (Sandbox Code Playgroud)

我尝试了几种不同的方法来引用sessionService.isLoggedIn函数,例如:

$scope.isLoggedIn = sessionService.isLoggedIn();
$scope.isLoggedIn …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

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

Zend Forms - populate()和setDefaults()

假设我有一个收集名字和姓氏的表格:

$first_name = new Zend_Form_Element_Text('first_name');
$first_name->setLabel("First Name")
    ->setRequired(true);

$last_name = new Zend_Form_Element_Text('last_name');
$last_name->setLabel("Last Name")
    ->setRequired(true);

$form = new Zend_Form();
$form->addElement($first_name)
    ->addElement($last_name)
Run Code Online (Sandbox Code Playgroud)

如果我想在表单上使用"populate($ data)"或"setDefaults($ data)"方法,那么数组是如何组织的呢?这些函数期望什么样的数组?我无法在文档中找到此信息.

另外,我知道我可以在创建元素时设置值,但这不是我需要的.

php forms zend-framework

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

Apache - 处理TCP连接,但不处理HTTP请求

我有一个GPS单元,可以通过TCP连接发送数据,但我没有能力修改它发送的消息,所以它会以HTTP请求的形式来到我的服务器 - 它只能发送一条消息以预定义的格式.

所以,我有以下问题:

1)Apache是​​否可以处理不是以HTTP请求形式出现的TCP连接,并且发送的消息是否由PHP脚本处理?

2)如果#1不可能,你会如何建议我处理发送到我服务器的数据?

我可能会有数百个(如果不是数千个)这些GPS单元向我的服务器发送数据,因此我需要一种有效的方法来处理所有连接(这就是为什么我希望Apache或其他一些有价值的服务器来处理TCP连接).我希望能够处理通过PHP连接发送的消息,因为这是我的应用程序的其余部分运行,我将需要插入发送到数据库的数据(并且PHP非常擅长这样做之类的事情).

如果它很重要,GPS单元可以通过UDP连接发送数据,但是从我读到的内容中,Apache不能与UDP连接一起工作.

欢迎大家提出意见.

php apache tcp

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

使用CastCompanionLibrary向ActionBar添加强制转换按钮

我正在尝试使用CastCompanionLibrary的帮助方法将强制转换图标添加到ActionBar:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.main, menu);
    mDataCastManager.addMediaRouterButton(menu, R.id.media_route_menu_item); // This one
    return true;
}
Run Code Online (Sandbox Code Playgroud)

我将此作为我的menu.xml,由随附库中包含的PDF指定:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/media_route_menu_item"
        android:title="@string/media_route_menu_title"
        app:actionProviderClass="android.support.v7.app.MediaRouteActionProvider"
        app:showAsAction="always"/>
</menu>
Run Code Online (Sandbox Code Playgroud)

但是,ActionBar中没有任何内容.不会抛出任何错误,根本没有任何错误可见.如果我添加一个不同的菜单项只是为了查看我的菜单中的所有内容是否设置正确,该项目显示正常 - 这只是这个未显示的投射操作菜单项.

我已经尝试将"app"前缀更改为"android",但后来我NullPointerException在图书馆的某处深处,我尝试给菜单项一个不同的,可见的图标.什么都没有帮助.

在AndroidStudio中,菜单预览显示一个标题为"Play on ..."的菜单项,因此看起来这应该可行.

我究竟做错了什么?

android google-cast

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

Openlayers商业应用:许可问题?

我正在计划创建一个商业车队/资产跟踪网络应用程序,但当我发现我们的高价格谷歌和微软收费在商业环境中使用他们的服务时,我感到气馁.我发现Openlayers,它声称是免费的,所以我想知道是否有人有商业使用它的经验?

我看起来像API的使用是免费的,但这包括地图吗?Openlayers还允许您使用Google作为地图提供商,但如果我这样做,我会破坏Google的TOS,因为它是商业广告吗?

如果这不是一个问题,因为它与编程问题没有直接关系,我很抱歉,但我无法在其他任何地方找到明确答案,我想有人在SO上有创建商业广告的经验地图应用.

licensing google-maps open-source openlayers

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