我只想尝试用django构建一个项目.因此,我有一个关于如何管理这样一个项目的(基本)问题.因为我找不到任何关于如何将项目拆分成应用程序的指南.
我们以一种SO为例.你会使用哪些应用程序?我会说应该有应用程序"用户"和"问题".但是如果有一个包含静态文章的主题系统呢?也许他们也可以获得投票.那么如何构建应用程序结构呢?一个应用程序的"问题","投票"和"主题"或只是一个应用程序"内容"?
我不知道该怎么做.也许是因为我对Django的了解不多,但我对...感兴趣...
它不会删除第二个表单标记内的所有内容,只是隐藏页面中的标记和标记
任何想法和解决方法?
我有一个工作线程正在侦听TCP套接字以获取传入流量,并缓冲接收到的主线程要访问的数据(让我们称之为套接字A).然而,工作线程也有做一些常规操作(比如,每秒一次),即使没有数据进来,所以我用select()了超时,让我不需要保持轮询.(请注意,调用receive()在非阻塞套接字,然后睡一秒钟也不好:输入数据应该是立即可用于主线程,即使主线程可能并不总是能够处理它的时候了,因此需要缓冲.)
现在,我还需要能够发信号通知工作线程立即做其他事情; 从主线程,我需要立即让工作线程select()返回.现在,我已经解决了这个问题(方法基本上从这里和这里采用):
在程序启动时,工作线程用于此目的创建数据报(UDP)类型的附加插座,并将其绑定到一些随机端口(我们称之为插座乙).同样,主线程创建一个用于发送的数据报套接字.在其号召select(),工作线程,将列出一个和乙在fd_set.当主线程需要发信号时,它sendto()是相应端口的几个字节localhost.回到工作线程中,如果B保留在fd_setafter select()返回中,则recvfrom()调用并且接收的字节被简单地忽略.
这似乎工作得很好,但我不能说我喜欢这个解决方案,主要是因为它需要为B绑定一个额外的端口,还因为它添加了几个额外的套接字API调用,这可能会失败我猜 - 我不知道真的想要找出每个案件的适当行动.
我认为理想情况下,我想调用一些以A作为输入的函数,除了立即select()返回之外什么都不做.但是,我不知道这样的功能.(我想我可以举例来说shutdown()套接字,但副作用并不是真的可以接受:)
如果这是不可能的,那么第二个最佳选择是创建一个比真正的UDP套接字更糟糕的B,并且实际上并不需要分配任何有限的资源(超出合理的内存量).我想Unix域套接字就可以做到这一点,但是:解决方案不应该比现在的解决方案少得多,尽管一些适量的#ifdef东西都可以.(我主要针对Windows和Linux - 并且顺便编写C++.)
请不要建议重构以摆脱两个单独的线程.这种设计是必要的,因为主线程可能会被长时间阻塞(例如,做一些密集的计算 - 我无法receive()从最里面的计算循环开始定期调用),同时,有人需要缓冲传入的数据(由于我无法控制的原因,它不能是发件人).
现在我正在写这篇文章,我意识到有人肯定会简单地回复" Boost.Asio ",所以我刚刚看了它......但是找不到明显的解决方案.请注意,我也不能(轻松地)影响套接字A的创建方式,但如果需要,我应该可以让其他对象包装它.
仍然试图找到我在实际情况下使用"yield"关键字的位置.
我在这个主题上看到了这个主题
但是在接受的答案中,他们将此作为一个例子,其中某人正在迭代Integers()
public IEnumerable<int> Integers()
{
yield return 1;
yield return 2;
yield return 4;
yield return 8;
yield return 16;
yield return 16777216;
}
Run Code Online (Sandbox Code Playgroud)
但为什么不用
list<int>
Run Code Online (Sandbox Code Playgroud)
在这里.似乎更直截了当..
我目前正在尝试使用RSACrytoServiceProveider类实现一个类来处理我的应用程序实例之间的安全通信.第一个问题:实现单个类来处理发送者/接收者角色或者我应该将角色分成单个类是一个好主意吗?这是我到目前为止所做的:
using System;
using System.Text;
using System.Security.Cryptography;
namespace Agnus.Cipher
{
public class RSA
{
private byte[] plaintextBytes;
private byte[] ciphertextBytes;
private RSACryptoServiceProvider rSAProviderThis;
private RSACryptoServiceProvider rSAProviderOther;
public string PublicKey
{
get { return rSAProviderThis.ToXmlString(false); }
}
public RSA()
{
rSAProviderThis = new RSACryptoServiceProvider { PersistKeyInCsp = true };
plaintextBytes = Encoding.Unicode.GetBytes(PublicKey);
}
public void InitializeRSAProviderOther(string parameters)
{
rSAProviderOther.FromXmlString(parameters);
}
public byte[] Encrypt()
{
return rSAProviderThis.Encrypt(plaintextBytes, true);
}
public byte[] Decrypt()
{
return rSAProviderThis.Decrypt(ciphertextBytes, true);
}
public byte[] Sign()
{
using …Run Code Online (Sandbox Code Playgroud) 有没有一种方法/工具可以显示我在项目中实现某个界面的所有类/接口?在Eclipse(Java)中,我将使用上下文菜单"Open Type Hierarchy"选项,它将显示一个(漂亮)类型的树,它扩展了所选类型.是否有工具在.NET中执行相同的操作?
我有一个看起来像(A(B(CD))(E(F)))的列表代表这个树:
A
/ \
B E
/ \ /
C D F
Run Code Online (Sandbox Code Playgroud)
如何将其打印为(ABECDF)?
这是我管理的:
((lambda(tree) (loop for ele in tree do (print ele))) my-list)
Run Code Online (Sandbox Code Playgroud)
但它打印:
A
(B (C D))
(E (F))
NIL
Run Code Online (Sandbox Code Playgroud)
我对Common LISP很新,所以可能会有我应该使用的功能.如果是这样的话,那就让我开心吧.
谢谢.
game.h needs:
- packet.h
- socket.h
server.h needs:
- socket.h
socket.h needs:
- game.h
Run Code Online (Sandbox Code Playgroud)
当我尝试将socket.h包含到game.h中时会出现问题,因为socket.h已经包含了game.h.我该如何解决这些问题?
我有字节数组作为输入.我想将该数组转换为包含数组值的十六进制表示的字符串.这是F#代码:
let ByteToHex bytes =
bytes
|> Array.map (fun (x : byte) -> String.Format("{0:X2}", x))
let ConcatArray stringArray = String.Join(null, (ByteToHex stringArray))
Run Code Online (Sandbox Code Playgroud)
这产生了我需要的结果,但我想使它更紧凑,因此我只有一个功能.我找不到在ByteToHex结尾处连接每个字节的字符串表示的函数.
我尝试了Array.concat,concat_map,我尝试了列表,但我能得到的最好的是数组或字符串列表.
问题:
示例输入:[| 0x24uy; 0xA1uy; 0x00uy; 0x1Cuy |]应该产生字符串"24A1001C"
那里有很多安全建议告诉程序员什么不该做.您认为在编写良好安全性时应遵循的最佳做法是什么?
请在下面添加您建议的安全控制/设计模式.建议的格式是一个大胆的标题,总结了这个想法,然后是描述和示例,例如:
默认拒绝
否认未明确允许的所有内容......
请通过改进投票或评论,而不是复制现有答案.请在自己的答案中添加不同的模式和控件,而不是在3或4首选控件中添加答案.
编辑:我正在制作一个社区维基以鼓励投票.