进程间同步的方式有哪些?

注入产生的原理:

数据库设置为GBK编码:

宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而导致的注入漏洞.

1、正常情况下,当GPC开启或者使用addslashes函数会过滤GET或POST提交的参数时,黑客使用的单引号(‘)会被转义成:\

回复

共1条回复 我来回复
  • 迷失技术de小猪
    迷失技术de小猪
    稍等伙伴们,思考简介中~
    评论

    临界区

    通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。

    优点:保证在某一时刻只有一个线程能访问数据的简便办法。

    缺点:虽然临界区同步速度很快,但却只能用来同步本进程内的线程,而不可
    用来同步多个进程中的线程。

    互斥量

    为协调共同对一个共享资源的单独访问而设计的。互斥量跟临界区很相似,比临界区复杂,互斥对象只有一个,只有拥有互斥对象的线程才具有访问资源的权限。

    优点:使用互斥不仅仅能够在同一应用程序不同线程中实现资源的安全共享,
    而且可以在不同应用程序的线程之间实现对资源的安全共享。

    缺点:

    • 互斥量是可以命名的,也就是说它可以跨越进程使用,所以创建互斥量需 要的资源更多,所以如果只为了在进程内部是用的话使用临界区会带来速 度上的优势并能够减少资源占用量。
    • 通过互斥量可以指定资源被独占的方式使用,但如果有下面一种情况通过 互斥量就无法处理,比如现在一位用户购买了一份三个并发访问许可的数 据库系统,可以根据用户购买的访问许可数量来决定有多少个线程/进程能 同时进行数据库操作,这时候如果利用互斥量就没有办法完成这个要求, 信号量对象可以说是一种资源计数器。

     

    信号量

    为控制一个具有有限数量用户资源而设计。它允许多个线程在同一时刻访问同 一资源,但是需要限制在同一时刻访问此资源的最大线程数目。互斥量是信号 量的一种特殊情况,当信号量的最大资源数=1 就是互斥量了。

    优点:适用于对 Socket(套接字)程序中线程的同步。

    缺点:

    • 信号量机制必须有公共内存,不能用于分布式操作系统,这是它最大的弱点;
    • 信号量机制功能强大,但使用时对信号量的操作分散, 而且难以控制,读写和维护都很困难,加重了程序员的编码负担;
    • 核心操作P-V分散在各用户程序的代码中,不易控制和管理,一旦错误,后果严重,且不易发现和纠正。

    事件

    用来通知线程有一些事件已发生,从而启动后继任务的开始。

    优点: 事件对象通过通知操作的方式来保持线程的同步,并且可以实现不同进
    程中的线程同步操作。

    3个月前 0条评论
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球