Unity-Redis数据存储

news/2024/9/23 21:15:26/

1.Redis 安装测试:
  安装:
    安装包 链接:https://pan.baidu.com/s/1BzuqRNJHW1MiB4xm4UT4MA 提取码:pvrj
  使用:
    运行包内 redis-server.exe 启动 Redis 服务 ,运行包内 redis-cli.exe 启动客户端 (本地自联)
    远程到主机为 127.0.0.1,端口为 6379 ,密码为 mypass 的 redis 服务上 : redis-cli -h 127.0.0.1 -p 6379 -a "mypass"
  命令:
    检测连接 ping PONG
    增:set key value (setnx key value只有在 key 不存在时设置 key 的值 , exists key 存在 (integer) 1,不存在 (integer) 0)
    删:del key (命令执行后输出 (integer) 1,否则将输出 (integer) 0)
    改: set key value (rename key newkey 修改key, renamenx key newkey 仅当 newkey 不存在时,将 key 改名为 newkey)
    查: get key (type key 查看value类型 ,strlen key 返回 key 所储存的字符串值的长度)

2.Unity-Redis 存储调用:

  untiy工程需添加dll:链接:https://pan.baidu.com/s/1mPI4HYPTP5rfi3q-C3y-WQ   提取码:0wod  

using UnityEngine;
using ServiceStack.Redis;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;public class Unity_Redis : MonoBehaviour
{string exePath = @"F:\Redis\Redis-x64-5.0.10\redis-server.exe";//string exePath = Application.dataPath + "/Resources/redis-server.exe";RedisClient redisClient = new RedisClient("127.0.0.1", 6379);private void Start(){//var P_exe = Process.Start(exePath);//Application.OpenURL(exePath);Process pro = new Process();pro.StartInfo.FileName = exePath;pro.StartInfo.UseShellExecute = true;pro.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;pro.Start();}private void Update(){if (Input.GetKeyDown(KeyCode.Q)){redisClient.Add<string>("name", "xiaolang");UnityEngine.Debug.Log("添加:name -- " + redisClient.Get<string>("name"));}if (Input.GetKeyDown(KeyCode.W)){UnityEngine.Debug.Log("删除:name -- " + redisClient.Get<string>("name"));redisClient.Del("name");}if (Input.GetKeyDown(KeyCode.Delete)){redisClient.FlushAll();UnityEngine.Debug.Log("清理Redis");}}private void OnDestroy(){KillProcess("redis-server");}private void KillProcess(string processName){//processName是exe的文件名Process[] processes = Process.GetProcesses();foreach (Process process in processes){try{if (!process.HasExited){if (process.ProcessName == processName){process.Kill();UnityEngine.Debug.Log("已关闭进程");}}}catch (Exception e){UnityEngine.Debug.Log(e.ToString());}}}
}

参考:https://www.jianshu.com/p/fab041e93b52


http://www.ppmy.cn/news/1503961.html

相关文章

在单片机上实现Ymodem协议接收文件的实现

目录 1. Y-Modem协议介绍 1.1 Y-Modem协议简介 1.2 Y-Modem协议格式 1.2.1 Y-Modem起始帧 1.2.2 Y-Modem数据帧 1.2.3 Y-Modem结束帧 1.2.4 Y-Modem命令 2. Tera Term软件使用 2.1 Tera Term软件的使用 3. 单片机接收端实现代码 本篇文章主要介绍的是通过Y-Modem协议如…

MyBatis开发: XML配置⽂件

前言 在IDEA的yml文件注释发现乱码 1.配置文件注释中文显示乱码 退出重进&#xff0c;发现不是乱码就成功 一.MyBatis XML配置⽂件 学习了注解的⽅式, 接下来我们学习XML的⽅式. 使⽤Mybatis的注解⽅式&#xff0c;主要是来完成⼀些简单的增删改查功能. 如果需要实现复杂的SQL…

微前端(qiankun)

微前端 特点&#xff1a;独立开发、独立部署&#xff0c;独立运行&#xff0c;增量升级 解决的问题&#xff1a;日常开发过程中&#xff0c;可能有很多老项目需要迭代&#xff0c;但是可能新的一些可能需要使用的依赖或者新的一些框架&#xff0c;老项目已经不满足&#xff0c;…

FFmpeg实现文件夹多视频合并

ffmpeg version 6.1.1 要求: 合并的视频同分辨率、同帧率 命令: python 多文件夹多视频合并.py --input_videos D:\videos --output_videos D:\out_videos --output_txts D:\out_txt要求视频文件夹输入目录:--videos--test1001.mp4002.mp4--test2001.mp4002.mp4输出目录(自动创…

Python酷库之旅-第三方库Pandas(034)

目录 一、用法精讲 101、pandas.Series.__array__魔法方法 101-1、语法 101-2、参数 101-3、功能 101-4、返回值 101-5、说明 101-6、用法 101-6-1、数据准备 101-6-2、代码示例 101-6-3、结果输出 102、pandas.Series.get方法 102-1、语法 102-2、参数 102-3、…

TCP为什么需要四次挥手?

tcp为什么需要四次挥手&#xff1f; 答案有两个&#xff1a; 1.将发送fin包的权限交给被动断开方的应用层去处理&#xff0c;也就是让程序员处理 2.接第一个答案&#xff0c;应用层有了发送fin的权限&#xff0c;可以在发送fin前继续向对端发送消息 为了搞清楚这个问题&…

Django学习(二)

get请求 练习&#xff1a; views.py def test_method(request):if request.method GET:print(request.GET)# 如果链接中没有参数a会报错print(request.GET[a])# 使用这个方法&#xff0c;当查询不到参数时&#xff0c;不会报错而是返回你设置的值print(request.GET.get(c,n…

后表观遗传学时代如何开展DNA甲基化研究?

DNA甲基化是一种重要的表观遗传学修饰形式&#xff0c;指的是DNA分子上附加甲基基团&#xff08;-CH3&#xff09;的过程。在甲基化的过程中&#xff0c;甲基基团通常被共价地添加到DNA分子的胞嘧啶&#xff08;Cytosine&#xff0c;简称C&#xff09;碱基上&#xff0c;形成5-…