-
Lesson2
OPEN GL学习程序第二节 C++运行环境 可执行 方便初学者学习(the second lesson of OPEN GL learning program)
- 2013-11-28 19:53:15下载
- 积分:1
-
qiyizhi
自编奇异值MATLAB程序,利用奇异值去除信号噪声。以供参考。(Editing the singular value MATLAB, using the singular value to remove noise signal. For your reference.)
- 2012-04-26 12:55:35下载
- 积分:1
-
SVMtools
该源码是针对MATLAB的SVM工具包,可用于MATLAB来进行SVM研究。(The MATLAB source code for the SVM toolkit can be used in MATLAB to carry out research SVM.)
- 2009-02-24 16:52:27下载
- 积分:1
-
MFCskin
这里包括五十几个VC++的皮肤,还有使用方法。(This file includes more than 50 VC++ skins,and the method how to use them。)
- 2011-10-08 21:36:34下载
- 积分:1
-
objective C 练习
objective C 练习 用的一个模型,举了一个车的例子,定义了一个类:car,头文件和实现
- 2022-11-28 13:00:03下载
- 积分:1
-
OMRON视觉软件
视觉开发包(Visual development kit)
- 2020-11-22 10:09:35下载
- 积分:1
-
读者写者问题
说明: 1、定义一个数据缓存buffer及用于实现同步互斥的信号量。
2、定义一个读者函数:
?当有写者在占用buffer时,读者应该等待,直到写者不再使用该buffer。
?当有其他读者在占用buffer时,读者可对buffer进行读取操作。
?当buffer中有数据时,则从其中读取一个数据,并显示然后退出。
?当buffer中没有数据时,应等待,直到buffer中有数据可读。
3、定义一个写者函数
?当有读者在占用buffer时,写者应该等待,直到所有的读者都退出为止。
?当有其他写者占用buffer时,该写者应该等待,直到占用buffer的写者退出为止。
?当buffer有空闲时,写者应该在buffer中写入一个数据并退出。
?当buffer满时,写者应该等待,直到buffer有空闲为止。
4、定义主函数,在其中可以任意创建读者与写者。
可根据用户输入创建读者或写者进程(线程)。(1. Define a data buffer and semaphores for synchronization and mutual exclusion.
2. Define a reader function:
When a writer is occupying the buffer, the reader should wait until the writer no longer uses the buffer.
When other readers occupy the buffer, they can read the buffer.
When there is data in the buffer, read a data from it, display and exit.
When there is no data in the buffer, wait until the data in the buffer is readable.
3. Define a writer function
When a reader is occupying the buffer, the writer should wait until all readers quit.
When other writers occupy the buffer, the writer should wait until the writer who occupies the buffer exits.)
- 2019-12-27 18:49:46下载
- 积分:1
-
asp.net防刷新(F5) 禁止重复提交 实例(附完整源码)
实现了用户操作时 刷新导致的重复操作问题。 实现原理如下: 使用一个上下文唯一的票据号,该票据号随页面提交或回发而递增,每当用户与服务器端交互时,代码会提取上次的票据号码并与当前票据号码比较,如果当前票据大于上次的票据,则是提交或回发,否则则识别为刷新。 这种方式会用到HttpMoudel,并在其中操作Session。 使用方法如下: 1、引入dll MsdnExt 压缩包中有2.修改web.config,在 添加以下item: 其中“MsdnModule”是一个名字, “Msdn.RefreshModule”是“Msdn”下的“RefreshModule”类型,“MsdnExt”是程序集的名字 3.引入命名空间 using Msdn; 并修改页面类继承Msdn.Page 4.使用代码 代码: protected void Button1_Click(object sender, EventArgs e) { if (!IsPageRefresh) Response.Write("按钮事件"); else Response.Write("页面刷新");TrackRefreshState();} MSDNPage.cs 核心代码如下:using System;using System.Web.UI;using System.Web;using System.Text;namespace Msdn{ public class Page : System.Web.UI.Page { #region Constants // *********************************************************** // Constants public const string RefreshTicketCounter = "RefreshTicketCounter"; private const string SetFocusFunctionName = "__setFocus"; private const string SetFocusScriptName = "__inputFocusHandler"; // *********************************************************** #endregion // *********************************************************** // Ctor public Page() { m_focusedControl = ""; // Register a PreRender handler this.PreRender = new EventHandler(RefreshPage_PreRender); } // *********************************************************** // ************************************************************** // Indicates if the page is being viewed in response to F5 hit public bool IsPageRefresh { get { object o = HttpContext.Current.Items[RefreshAction.PageRefreshEntry]; if (o == null) return false; return (bool) o; } } // ************************************************************** // ************************************************************** // Increase the internal counter used to generate refresh tickets public void TrackRefreshState() { InitRefreshState(); int ticket = Convert.ToInt32(Session[RefreshTicketCounter]) 1; Session[RefreshTicketCounter] = ticket; } // ************************************************************** // ************************************************************** // Set the control with the input focus public void SetFocus(string ctlId) { m_focusedControl = ctlId; } // ************************************************************** #region Private Members // ************************************************************** // Create the hidden field to store the current request ticket private void SaveRefreshState() { int ticket = Convert.ToInt32(Session[RefreshTicketCounter]) 1; RegisterHiddenField(RefreshAction.CurrentRefreshTicketEntry, ticket.ToString()); } // ************************************************************** // ************************************************************** // Ensure that the ticket counter is initialized private void InitRefreshState() { if (Session[RefreshTicketCounter] == null) Session[RefreshTicketCounter] = 0; } // ************************************************************** // ************************************************************** // Handle the PreRender event private void RefreshPage_PreRender(object sender, EventArgs e) { SaveRefreshState(); AddSetFocusScript(); } // ************************************************************** // ************************************************************** // Add any script code required for the SetFocus feature private void AddSetFocusScript() { if (m_focusedControl == "") return; // Add the script to declare the function // (Only one form in ASP.NET pages) StringBuilder sb = new StringBuilder(""); sb.Append(""); sb.Append("function "); sb.Append(SetFocusFunctionName); sb.Append("(ctl) {"); sb.Append(" if (document.forms[0][ctl] != null)"); sb.Append(" {document.forms[0][ctl].focus();}"); sb.Append("}"); // Add the script to call the function sb.Append(SetFocusFunctionName); sb.Append("(); sb.Append(m_focusedControl); sb.Append();"); // Register the script (names are CASE-SENSITIVE) if (!IsStartupScriptRegistered(SetFocusScriptName)) RegisterStartupScript(SetFocusScriptName, sb.ToString()); } // ************************************************************** #endregion #region Private Properties // *********************************************************** // Private properties private string m_focusedControl; // *********************************************************** #endregion }}
- 2021-03-16 17:39:21下载
- 积分:1
-
C51-music
C51 编的音乐程序,关于如何编制音乐代码, 其实十分简单,频率常数即音乐术语中的音调,而节拍常数即音乐术语中的多少拍(C51 music program)
- 2013-12-22 13:47:44下载
- 积分:1
-
C#通过读取硬盘序列号,生成license文件。
C#通过读取硬盘序列号,生成license文件。(C# generates the license file by reading the serial number of the hard disk.)
- 2019-05-17 16:54:11下载
- 积分:1