小编Nit*_*tay的帖子

在设备控制台中查看os_log消息

我正试图通过统一记录(os_log)从我的应用程序中退出一些

这是日志的初始化:

var osLog : OSLog = OSLog(subsystem: "com.test.testapp", category: "native-tester")
Run Code Online (Sandbox Code Playgroud)

以下是我如何使用它:

os_log("iOS App initialized successfully!", log: osLog, type:.info)
Run Code Online (Sandbox Code Playgroud)

正常调试应用程序时,日志会在控制台输出上正确显示,但是当我查看设备控制台时(在"设备和模拟器"窗口中显示),我根本看不到它们.

本文说您应该配置系统以使用调试日志

sudo log config --mode "level:debug" --subsystem com.test.testapp
Run Code Online (Sandbox Code Playgroud)

但这似乎并没有什么不同.我猜这是因为我正在配置mac来查看日志,而不是iPad.

如何在设备控制台中查看os_log中的ipad/iphone日志?

iphone xcode logging ios swift

17
推荐指数
4
解决办法
6123
查看次数

在Mathematica中绘制一个阶梯函数

我试图绘制几个UnitStep函数,但由于某种原因,Mathematica不会绘制整个函数 - 只是顶部(它看起来不像是一个步骤,更像是一条线).

我如何告诉mathematica绘制所有内容?

wolfram-mathematica

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

Excel VLOOKUP提供了错误的值

我有一个VLookup单元,它给了我错误的值:这是表:

    PID Product Price   User    User name   Deal On Amount After
in  1001    table   1001    1   Milly   No  1000
in  1001    table   100 13  Vernetta    Yes 900
out 1001    table   50  14  Mireya  No  900
out 1001    table   100 15  Rosanne Yes 1000
out 1001    table   101 16  Belinda No  1000
in  1001    table   200 1   Milly   Yes 800
in  1234    chair   300 2   Charlena    Yes 500
in  1234    chair   100 3   Mina    Yes 400
in  1234    chair   50  4 …
Run Code Online (Sandbox Code Playgroud)

excel vlookup

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

lxml 与模式 1.1

我正在尝试将 lxml 与 xs:assert 验证标记一起使用。我尝试使用此 IBM 页面中的示例: http://www.ibm.com/developerworks/library/x-xml11pt2/

<xs:element name="dimension">
  <xs:complexType>
    <xs:attribute name="height" type="xs:int"/>
    <xs:attribute name="width" type="xs:int"/>
    <xs:assert test="@height < @width"/>
  </xs:complexType>
</xs:element>
Run Code Online (Sandbox Code Playgroud)

看来 lxml 不支持 XML Schema 1.1。

有人可以验证这一点吗?什么 XML(对于 Python)引擎支持 Schema 1.1?

xml xsd lxml

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

Git clone在特定存储库上返回result = 18 code = 200

我正在尝试从公司存储库中克隆内部存储库,并且我一直收到此错误:

error: RPC failed; result=18, HTTP code = 200
Run Code Online (Sandbox Code Playgroud)

它总是在存储库完全下载后才会发生(需要一段时间).

我尝试过使用torotiseGit.这是报告:

git.exe clone   --progress -v  "http://path/repository.git" "C:\Users\user\Documents\code\repository"

Cloning into 'C:\Users\user\Documents\code\repository'...
POST git-upload-pack (424 bytes)
remote: Compressing objects: 100% (4895/4895)   
Receiving objects: 100% (6970/6970), 61.89 MiB | 4.82 MiB/s
Resolving deltas: 100% (2610/2610)
Resolving deltas: 100% (2610/2610), done.
remote: Total 6970 (delta 2610), reused 5702 (delta 1672)
error: RPC failed; result=18, HTTP code = 200

git did not exit cleanly (exit code 128)
Run Code Online (Sandbox Code Playgroud)

我已经尝试了几次,从Linux机器和Windows机器.同样的错误

我该如何进一步调查错误?我在Google上找不到任何有用的信息

编辑:我已经检查了Git服务器上的Apache日志 - 每个克隆都有一个GET和一个POST(结果为200).POST有点大(60MB) - 所以我尝试将postBuffer增加到500MB,但错误仍然发生

这真的是一个git …

git git-config

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

将驱动程序转换为Linux

我正在尝试将linux驱动程序写入我拥有Windows驱动程序的设备(类似于此处描述的情况,但是设备不同)

我正在使用Libusb进行linux端的通信,而SourceUSB作为我的USB嗅探器(在windows机器上).现在我认为我已经正确地复制了控件和批量,但是我无法真正测试针对windows的linux日志.我正在VM上运行Ubuntu 12.04.

所以我的问题是:

  1. 有多平台记录器吗?这可以真正简化日志比较过程.
  2. 当我将USB设备连接到VM时 - 我在Windows中获得了VM驱动程序.嗅探这个设备可以准确地告诉我设备看到了什么,对吧?我的意思是 - 这是我想要嗅闻的地方吗?

编辑:我已经在Windows上编译了我的应用程序(libusb是跨平台的 - 非常感谢libusb开发人员做得很好)并且我的应用程序正常工作.

在Linux上运行我的应用程序时嗅探VM驱动程序时,我看到USB的请求为VENDOR_DEVICE而不是CONTROL_TRANSFER和BULK_OR_INTERRUPT.如果我理解正确,这似乎是问题,因为这是设备"看到"的内容.

所以我想我现在的问题是为什么Linux将我的请求作为供应商发送.

另一个编辑:问题解决了:

  1. 听VM驱动程序给了我错误的请求(我正在听VM驱动器流量,而不是我想要的,我的USB linux驱动程序的流量
  2. Libusb完全是多平台的.我花了几分钟时间让我的代码在windows下编译,从那里调试和比较日志非常容易

linux usb driver libusb

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

将 C++ DLL 后期绑定到 C# - 函数始终返回 true

我有一个 DLL,它的 h 文件中有这个:

extern "C" __declspec(dllexport) bool Connect();
Run Code Online (Sandbox Code Playgroud)

并在c文件中:

extern "C" __declspec(dllexport) bool Connect()
{
     return false;  
}
Run Code Online (Sandbox Code Playgroud)

在 C# 中,我有以下代码:

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
private delegate bool ConnectDelegate();

private ConnectDelegate DLLConnect;

public bool Connect()
{
    bool l_bResult = DLLConnect();
    return l_bResult;
}

public bool LoadPlugin(string a_sFilename)
{
   string l_sDLLPath = AppDomain.CurrentDomain.BaseDirectory;

   m_pDLLHandle = LoadLibrary(a_sFilename);
   DLLConnect = (ConnectDelegate)GetDelegate("Connect", typeof(ConnectDelegate));
   return false;
}

private Delegate GetDelegate(string a_sProcName, Type a_oDelegateType) 
{
    IntPtr l_ProcAddress = GetProcAddress(m_pDLLHandle, a_sProcName);
    if (l_ProcAddress == IntPtr.Zero)
       throw new EntryPointNotFoundException("Function: " …
Run Code Online (Sandbox Code Playgroud)

c c# late-binding dllexport

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

使用libEvent的高性能服务器

我正在设计一个高性能服务器(不是HTTP服务器),正在考虑我的设计选项.服务器应支持大量传入连接(以千计),并在Windows和Linux上进行编译.

在Windows端,我已经实现了IO完成端口服务器,到目前为止似乎处理压力.由于Linux需求弹出,我现在尝试找到一个跨平台库,它为我提供了一种方法来使用线程池的接受/读取事件.

到目前为止,LIBEVENT似乎是一个正确的选择(如"示例代码:回声服务器"的东西在这个链接).但引用libEvent文档中的另一个页面:

如果将event_base设置为使用锁定,则可以安全地在多个线程之间访问它.但是它的循环只能在一个线程中运行.如果要让多个线程轮询IO,则需要为每个线程分配一个event_base.

我的基本设计是让线程池响应接受和读取事件.如果我理解正确的话,这句话说我做不到.

有没有人有高性能的经验.基于libEvent的服务器?我应该使用不同的图书馆吗?

这种服务器的示例代码将是完美的

c++ libevent

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

Apache + mod_wsgi - Python 不加载已安装的模块

我有一个带有 mod_wsgi 的 Apache 服务器,运行 Python 2.7 脚本。该脚本使用通过 pip 安装的 python Pillow 模块。

使用正常运行脚本可以正常python script.py工作,但是当从 wsgi 运行脚本时 - 会为 PIL 引发 ImportError 异常。

这是来自 Apache 的配置/etc/apache2/sites-enabled/000-default.conf

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        WSGIScriptAlias /wsgi/ /home/nitay/Desktop/WebsitePath/Python/wsgi.py

        <Directory "/home/nitay/Desktop/WebsitePath/Python">
            Require all granted
        </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

没有安装virtualenv,这台机器上只有一个Python安装。

我该怎么做才能让 python 找到它安装的模块?

我已经看到了使用 mod_wsgi 的守护进程模式手动定义 python 路径的同一个球场的解决方案。有没有办法在嵌入式模式下这样做?

编辑:Apache 错误日志:

[Wed Nov 02 16:08:02.931400 2016] [wsgi:error] [pid 48202:tid 140100207392512] [client 192.168.1.179:29223] mod_wsgi (pid=48202): Target WSGI script …
Run Code Online (Sandbox Code Playgroud)

python apache mod-wsgi pip python-2.7

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

将预分配的char *缓冲区传递给ac函数

我在c中有一个函数,该函数接收预分配的字符串并用数据填充它-我想从swift调用此函数。我已经找到了许多有关如何将字符串从swift传递到c的示例,但是没有发现任何示例显示将数据写在预分配的字符串上的c函数。

c函数:

int GetData(char *dataJson, int maxSize);
Run Code Online (Sandbox Code Playgroud)

从另一方面说,这段代码可以编译,但是我找不到如何进行预分配的方法 dataBuffer

let dataBuffer = UnsafePointer<UInt8>
GetData(dataBuffer, 2048)
Run Code Online (Sandbox Code Playgroud)

在Swift中有办法吗?

c pointers swift swift3

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

dpkt在有效的pcap上抛出NeedData

我有这个python代码:

import sys
import dpkt

f = file("pcaop.Pcap")
pcap = dpkt.pcap.Reader(f)

i = 0
for ts, buf in pcap:
    print "Ya"
Run Code Online (Sandbox Code Playgroud)

dpkt在第52个数据包上抛出NeedData.每次都是同一个 - 我检查了数据包52,它与wireshark上的其他人一样.

是什么导致这个?

python pcap

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

BeautifulSoup 在 Amazon EC2 机器上表现不同

我正在运行以下脚本:

from bs4 import BeautifulSoup
import urllib2
import sys

print sys.version

url = 'https://www.google.com/finance'
page = urllib2.urlopen(url).read()
soup = BeautifulSoup(page)

trends_tag = soup.find('div', {'id': 'topmovers'})

tags = trends_tag.find_all('td', 'change chg')
print len(tags)

tag = tags[0]
print 'Tag: ' + tag.text
Run Code Online (Sandbox Code Playgroud)

在我的电脑上,输出是:

2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)]
11
Tag: 33.24%
Run Code Online (Sandbox Code Playgroud)

在 EC2 机器上,输出为:

2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)]
11
Tag: 33.24%
12.18B


CLX

The Clorox Co
7.35%
11.67B


THOR …
Run Code Online (Sandbox Code Playgroud)

python beautifulsoup amazon-ec2 web-scraping python-2.7

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