问题标签 [program-flow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
user-interface - GUI 和游戏程序流程与 Web 程序相比如何
我已经开发 Web 应用程序有一段时间了,并且已经涉足 GUI 和游戏应用程序开发。
在 Web 应用程序(对我来说是 php)中,向文件发出请求,该文件包含将信息处理到内存中的所有必要文件,然后每个请求的流程从上到下。(主要)
我知道对于游戏来说,动作发生在游戏循环中,但是游戏的所有不同元素是如何分层到单个循环中的(菜单系统、gui、加载资产和 3d 世界)并不断加载和卸载某些事物。
GUI程序也是如此,我相信存在某种“应用程序循环”。
大多数项目是否被调用到内存中然后被访问,这些项目是否在需要时链接并加载到内存中?
帮助我更快地开发 Web 应用程序的是当我了解程序的流程时,它不必详细,只需大致的想法或伪代码。
c# - 创建取消方案
我有一个程序可以分析源代码。它可以递归遍历一个目录找到所有项目,然后递归遍历项目找到所有源代码。
我想创建一个取消进程按钮,它允许用户停止代码解析。我在后台工作人员中运行代码解析。我希望能够观看取消事件。
问题是弄清楚如何编辑我的代码,以便它会检查该项目并返回到 GUI。解析过程深入了几个方法。
在一个小得多的过程中,我成功地使用了一个线程安全的单例,它有一个布尔值,表示是否已请求取消,并在它运行的地方停止循环。
将此取消请求处理到我的代码中的最佳方法是什么?
编辑:这是一个想法,灵感来自约翰桑德斯的回答。
如果我在我的处理线程中运行一个后台线程来监视 Cancel Singleton 的变化,然后从该进程中抛出一个异常怎么办?这似乎是一种很好的做法? 这不能按预期工作
编辑 2:John Saunders 的回答似乎是目前最好的。当 Singleton 现在为真时,我只会抛出我自己的异常。我会等着看是否提出任何其他解决方案
c - 在 C 中中断程序流
我有一个循环运行,每次迭代都会增加一个变量的值,我希望能够按键盘上的一个键来停止循环并报告变量的最终值。问题是,我不知道如何在 C 中做到这一点。我觉得很愚蠢,因为我似乎忽略了一些非常简单易行的方法,但是我尝试的一切都会停止循环,直到我按下一个键键盘,这基本上与我想要的完全相反。
基本上我想做的是这样的:
p>那有意义吗?无论如何,有关如何在 C 中执行此操作的任何提示?
objective-c - 如何找出方法或函数的调用者是谁?
我想编写一个调试函数或方法来帮助打印有用的信息。当它被调用时,我需要:
- 调用对象的内存地址(如果被对象调用)
- 调用者的方法签名(或方法的名称),或函数的名称
- 拥有该方法或函数的类名
是否有可能在不传递一大堆参数的情况下获取这些信息?
我想做类似的东西:
然后进入每个方法和功能,并帮助打印出有关正在发生的事情的有用信息。
.net - 如何使互斥锁不递归
我运行下面的代码,期望在我第二次锁定互斥锁时锁定流。运行它两次后,我意识到它可以多次锁定(假设在同一个线程中)而不会停止。我该如何改变这种行为?
java - 确认程序流程
有人可以判断下面的代码是否可以正常工作吗?
java - 在 Java 中访问内部类的包含类
这就是我现在正在做的事情。有没有更好的方法来访问超类?
我正在使用 Google Web Toolkit 进行编程,但我认为这确实是一个通用的 Java 问题。
java - Java 语言约定;获取器/设置器
在自己的类中访问变量时首选什么;“e.number”还是“e.getNumber()”?
编辑:
我认为最重要的问题是:编译器是否知道您调用的方法是 getter 或 setter。所以,将e.setNumber(5);
尽可能快e.number = 5;
language-agnostic - 编程风格:如果不满足守卫条件,是否应该提前返回?
我有时想知道的一件事是下面显示的两种风格中哪一种更好(如果有的话)?如果没有满足保护条件,是立即返回更好,还是只在满足保护条件时才做其他事情?
为了论证,请假设保护条件是一个返回布尔值的简单测试,例如检查元素是否在集合中,而不是通过抛出异常可能影响控制流的东西。还假设方法/函数足够短,不需要编辑器滚动。
c++ - C++ 程序流程:对象中的套接字和主函数
关于使用套接字的 C++ 程序流,我有一个相当棘手的问题。
基本上我所拥有的是:一个简单的命令行套接字服务器程序,它在套接字上侦听并一次接受一个连接。当该连接丢失时,它将打开以进行进一步的连接。
该套接字通信系统包含在一个类中。该类完全能够接收连接并将接收到的数据镜像到客户端。但是,该类使用非面向对象的 UNIX 套接字。
我的问题是在我的 main() 函数中,我有一行 - 创建该对象实例的那一行。然后对象初始化并等待。但是一旦获得连接,对象的初始化函数就会返回,当这种情况发生时,程序就会退出。在程序退出之前,我如何以某种方式等到该对象被删除?
概括:
- main() 创建对象的实例
- 对象监听
- 收到连接
- 对象的初始化函数返回
- main() 退出 (!)
我想要的是 main() 在退出之前以某种方式延迟,直到该对象完成它正在做的事情(也就是它会删除自己)。
有什么想法吗?