1 reflect反射

  • 1)反射定义:在计算机科学中,反射是指计算机程序在运行时(Run time)可以访问、检测和修
    改它本身状态或行为的一种能力。用比喻来说,反射就是程序在运行的时候能够“观察”并且修
    改自己的行为。

  • 2)GO 反射的意义:Go 语言的 ORM 库离不开它,Go 语言的 json 序列化库离不开它, fmt包字
    符串格式化离不开它,Go 语言的运行时更是离不开它。

  • 3)反射的目标:

    1. 获取变量的类型信息,例如这个类型的名称、占用字节数、所有的方法列表、所有的内部字段结
      构、它的底层存储类型等等。
    2. 动态的修改变量内部字段值。比如 json 的反序列化,你有的是对象内部字段的名称和相应的值,
      你需要把这些字段的值循环填充到对象相应的字段里。
  • 4)go语言中的反射通过refect包实现,reflect包实现了运行时反射,允许程序操作任意类型的对象。reflect包中的两个关键数据类Type和Value。

func TypeOf(v interface{}) Type // 返回类型 实际是接口
func ValueOf(v interface{}) Value // 返回值 结构体例如:
var s int = 12
fmt.Println(reflect.TypeOf(s))  // output: int
fmt.Println(reflect.ValueOf(s)) // output: 12

2 reflect反射-利弊

1.1 反射的好处

  1. 为了降低多写代码造成的bug率,做更好的归约和抽象。
  2. 为了灵活、好用、方便,做动态解析、调用和处理。
  3. 为了代码好看、易读、提高开发效率,补足与动态语言之间的一些差别。

1.2 反射的弊端

  1. 与反射相关的代码,经常是难以阅读的。在软件工程中,代码可读性也是一个非常重要的指标。
  2. Go 语言作为一门静态语言,编码过程中,编译器能提前发现一些类型错误,但是对于反射代码是无能为
    力的。所以包含反射相关的代码,很可能会运行很久,才会出错,这时候经常是直接 panic,可能会造成
    严重的后果。
  3. 反射对性能影响还是比较大的,比正常代码运行速度慢一到两个数量级。所以,对于一个项目中处于运
    行效率关键位置的代码,尽量避免使用反射特性。

3 reflect反射-Type

3.1 Type

  • 1)Type:Type类型用来表示一个go类型。
  • 2)不是所有go类型的Type值都能使用所有方法。请参见每个方法的文档获取使用限制。在调用有分类限定的方法时,应先使用Kind方法获知类型的分类。调用该分类不支持的方法会导致运行时的panic。
  • 3)获取Type对象的方法:func TypeOf(i interface{}) Type。
    例如:
str := "aaa"
res_type := reflect.TypeOf(str)
fmt.Println(res_type) //stringint1 := 1
res_type2 := reflect.TypeOf(int1)
fmt.Println(res_type2) //int

3.2 reflect.Type通用方法

func (t *rtype) String() string // 获取 t 类型的字符串描述,不要通过 String 来判断两种类型是否一致。
func (t *rtype) Name() string // 获取 t 类型在其包中定义的名称,未命名类型则返回空字符串。
func (t *rtype) PkgPath() string // 获取 t 类型所在包的名称,未命名类型则返回空字符串。
func (t *rtype) Kind() reflect.Kind // 获取 t 类型的类别。
func (t *rtype) Size() uintptr // 获取 t 类型的值在分配内存时的大小,功能和 unsafe.SizeOf 一样。
func (t *rtype) Align() int // 获取 t 类型的值在分配内存时的字节对齐值。
func (t *rtype) FieldAlign() int // 获取 t 类型的值作为结构体字段时的字节对齐值。
func (t *rtype) NumMethod() int // 获取 t 类型的方法数量。
func (t *rtype) Method() reflect.Method // 根据索引获取 t 类型的方法,如果方法不存在,则 panic。
// 如果 t 是一个实际的类型,则返回值的 Type 和 Func 字段会列出接收者。
// 如果 t 只是一个接口,则返回值的 Type 不列出接收者,Func 为空值。
func (t *rtype) MethodByName(string) (reflect.Method, bool) // 根据名称获取 t 类型的方法。
func (t *rtype) Implements(u reflect.Type) bool // 判断 t 类型是否实现了 u 接口。
func (t *rtype) ConvertibleTo(u reflect.Type) bool // 判断 t 类型的值可否转换为 u 类型。
func (t *rtype) AssignableTo(u reflect.Type) bool // 判断 t 类型的值可否赋值给 u 类型。
func (t *rtype) Comparable() bool // 判断 t 类型的值可否进行比较操作
//注意对于:数组、切片、映射、通道、指针、接口
func (t *rtype) Elem() reflect.Type // 获取元素类型、获取指针所指对象类型,获取接口的动态类型

例如:

package mainimport ("fmt""reflect"
)type Skills interface {reading()running()
}type Student struct {Age  intName string
}func (self Student) runing() {fmt.Printf("%s is running\n", self.Name)
}
func (self Student) reading() {fmt.Printf("%s is reading\n", self.Name)
}func main() {stu1 := Student{Name: "aaa", Age: 34}inf := new(Skills)stu_type := reflect.TypeOf(stu1)fmt.Println("类型stu_type:", stu_type) //main.Studentfmt.Println(stu_type.String())       //main.Studentfmt.Println(stu_type.Name())         //Studentfmt.Println(stu_type.PkgPath())      //mainfmt.Println(stu_type.Kind())         //structfmt.Println(stu_type.Size())         //24fmt.Println("===================")inf_type := reflect.TypeOf(inf).Elem()                          //  获取指针所指的对象类型fmt.Println("\n类型inf_type:", inf_type)                          //main.Skillsfmt.Println(inf_type.NumMethod())                               //2fmt.Println(inf_type.Method(0), "and", inf_type.Method(0).Name) // {reading main func() <invalid Value> 0} adn readingfmt.Println(inf_type.MethodByName("reading"))                   //{reading main func() <invalid Value> 0} true}

在这里插入图片描述

3.3 reflect.Type其他方法

// 数值
func (t *rtype) Bits() int // 获取数值类型的位宽,t 必须是整型、浮点型、复数型
// 数组
func (t *rtype) Len() int // 获取数组的元素个数
// 映射
func (t *rtype) Key() reflect.Type // 获取映射的键类型
// 通道
func (t *rtype) ChanDir() reflect.ChanDir // 获取通道的方向
// 结构体
func (t *rtype) NumField() int // 获取字段数量
func (t *rtype) Field(int) reflect.StructField // 根据索引获取字段
func (t *rtype) FieldByName(string) (reflect.StructField, bool) // 根据名称获取字段
func (t *rtype) FieldByNameFunc(match func(string) bool) (reflect.StructField, bool) // 根据指定的匹配函数 math 获取字段
func (t *rtype) FieldByIndex(index []int) reflect.StructField // 根据索引链获取嵌套字段
// 函数
func (t *rtype) NumIn() int // 获取函数的参数数量
func (t *rtype) In(int) reflect.Type // 根据索引获取函数的参数信息
func (t *rtype) NumOut() int // 获取函数的返回值数量
func (t *rtype) Out(int) reflect.Type // 根据索引获取函数的返回值信息
func (t *rtype) IsVariadic() bool // 判断函数是否具有可变参数。

例如:

package mainimport ("fmt""reflect"
)type Skills interface {reading()running()
}type Student struct {Name string "json:name"Age  int    "json:age"
}func (self Student) runing() {fmt.Printf("%s is running\n", self.Name)
}
func (self Student) reading() {fmt.Printf("%s is reading\n", self.Name)
}
func main() {stu1 := Student{Name: "aaa", Age: 34}stu_type := reflect.TypeOf(stu1)fmt.Println(stu_type.NumField())          //2fmt.Println(stu_type.Field(0))            //{Name  string  0 [0] false}fmt.Println(stu_type.FieldByName("Name")) //{{Age  int  16 [1] false} truefmt.Println(stu_type.Field(1))            //{Name  string  0 [0] false}fmt.Println(stu_type.FieldByName("Age"))  //{{Age  int  16 [1] false} true
}

在这里插入图片描述

3.3 Type结构
rtype 实现了 Type 接口的所有方法。剩下的不同的部分信息各种特殊类型结构体都不一样。可以将 rtype 理解成父类,特殊类型的结构体是子类,会有一些不一样的字段信息。

源码路径:C:\go\src\reflect\type.go

// 基础类型 rtype 实现了 Type 接口
type rtype struct {
size uintptr // 占用字节数
ptrdata uintptr
hash uint32 // 类型的hash值
...
kind uint8 // 元类型
...
}
// 切片类型
type sliceType struct {
rtype
elem *rtype // 元素类型
}
// 结构体类型
type structType struct {
rtype
pkgPath name // 所在包名
fields []structField // 字段列表
}

4 reflect.Value方法

  • 1)reflect.Value.Kind():获取变量类别,返回常量。常量可能的值如下:
const (
Invalid Kind = iota //不存在的类型
Bool
Int
Int8
Int16
Int32
Int64
Uint
Uint8
Uint16
Uint32
Uint64
Uintptr // 指针的整数类型
Float32
Float64
Complex64
Complex128
Array
Chan
Func
Interface
Map
Ptr
Slice
String
Struct
UnsafePointer
)

例如:

str := "aaa"
val := reflect.ValueOf(str).Kind()
fmt.Println(val) //string
  • 2)获取值的方法:
func (v Value) Int() int64 // 获取int类型值,如果 v 值不是有符号整型,则 panic。
func (v Value) Uint() uint64 // 获取unit类型的值,如果 v 值不是无符号整型(包括 uintptr),则 panic。
func (v Value) Float() float64 // 获取float类型的值,如果 v 值不是浮点型,则 panic。
func (v Value) Complex() complex128 // 获取复数类型的值,如果 v 值不是复数型,则 panic。
func (v Value) Bool() bool // 获取布尔类型的值,如果 v 值不是布尔型,则 panic。
func (v Value) Len() int // 获取 v 值的长度,v 值必须是字符串、数组、切片、映射、通道。
func (v Value) Cap() int // 获取 v 值的容量,v 值必须是数值、切片、通道。
func (v Value) Index(i int) reflect.Value // 获取 v 值的第 i 个元素,v 值必须是字符串、数组、切片,i 不能超出范围。
func (v Value) Bytes() []byte // 获取字节类型的值,如果 v 值不是字节切片,则 panic。
func (v Value) Slice(i, j int) reflect.Value // 获取 v 值的切片,切片长度 = j - i,切片容量 = v.Cap() - i。
// v 必须是字符串、数值、切片,如果是数组则必须可寻址。i 不能超出范围。
func (v Value) Slice3(i, j, k int) reflect.Value // 获取 v 值的切片,切片长度 = j - i,切片容量 = k - i。
// i、j、k 不能超出 v 的容量。i <= j <= k。
// v 必须是字符串、数值、切片,如果是数组则必须可寻址。i 不能超出范围。
func (v Value) MapIndex(key Value) reflect.Value // 根据 key 键获取 v 值的内容,v 值必须是映射。
// 如果指定的元素不存在,或 v 值是未初始化的映射,则返回零值(reflect.ValueOf(nil))
func (v Value) MapKeys() []reflect.Value // 获取 v 值的所有键的无序列表,v 值必须是映射。
// 如果 v 值是未初始化的映射,则返回空列表。
func (v Value) OverflowInt(x int64) bool // 判断 x 是否超出 v 值的取值范围,v 值必须是有符号整型。
func (v Value) OverflowUint(x uint64) bool // 判断 x 是否超出 v 值的取值范围,v 值必须是无符号整型。
func (v Value) OverflowFloat(x float64) bool // 判断 x 是否超出 v 值的取值范围,v 值必须是浮点型。
func (v Value) OverflowComplex(x complex128) bool // 判断 x 是否超出 v 值的取值范围,v 值必须是复数型。
  • 3)设置值的方法:
func (v Value) SetInt(x int64) //设置int类型的值
func (v Value) SetUint(x uint64) // 设置无符号整型的值
func (v Value) SetFloat(x float64) // 设置浮点类型的值
func (v Value) SetComplex(x complex128) //设置复数类型的值
func (v Value) SetBool(x bool) //设置布尔类型的值
func (v Value) SetString(x string) //设置字符串类型的值
func (v Value) SetLen(n int) // 设置切片的长度,n 不能超出范围,不能为负数。
func (v Value) SetCap(n int) //设置切片的容量
func (v Value) SetBytes(x []byte) //设置字节类型的值
func (v Value) SetMapIndex(key, val reflect.Value) //设置map的key和value,前提必须是初始化以后,存在覆盖、不存在添加

例如:

// 获取和设置普通类型的值
package mainimport ("fmt""reflect"
)func main() {// 1. 获取值str := "aaa"age := 11fmt.Println(reflect.ValueOf(str).String()) //获取str的值,结果aaafmt.Println(reflect.ValueOf(age).Int())    //获取age的值,结果11str2 := reflect.ValueOf(&str)              //获取Value类型// 2. 设置值str2.Elem().SetString("bbb")  //设置值fmt.Println(str2.Elem(), age) //bbb 11// 3. 通过反射获取其Value的地址类型变量,修改该变量原来的变量age也会跟着变age2 := reflect.ValueOf(&age) //获取Value类型fmt.Println("age2:", age2)    //0xc000012090age2.Elem().SetInt(40) //设置值fmt.Println("age:", age)fmt.Println("reflect.ValueOf(age):", reflect.ValueOf(age))
}

在这里插入图片描述

  • 4)其他方法:
//结构体相关:
func (v Value) NumField() int // 获取结构体字段(成员)数量
func (v Value) Field(i int) reflect.Value //根据索引获取结构体字段
func (v Value) FieldByIndex(index []int) reflect.Value // 根据索引链获取结构体嵌套字段
func (v Value) FieldByName(string) reflect.Value // 根据名称获取结构体的字段,不存在返回reflect.ValueOf(nil)
func (v Value) FieldByNameFunc(match func(string) bool) Value // 根据匹配函数 match 获取字段,如果没有匹配的字段,则返回
零值(reflect.ValueOf(nil)//通道相关:
func (v Value) Send(x reflect.Value)// 发送数据(会阻塞),v 值必须是可写通道。
func (v Value) Recv() (x reflect.Value, ok bool) // 接收数据(会阻塞),v 值必须是可读通道。
func (v Value) TrySend(x reflect.Value) bool // 尝试发送数据(不会阻塞),v 值必须是可写通道。
func (v Value) TryRecv() (x reflect.Value, ok bool) // 尝试接收数据(不会阻塞),v 值必须是可读通道。
func (v Value) Close() // 关闭通道
//函数相关
func (v Value) Call(in []Value) (r []Value) // 通过参数列表 in 调用 v 值所代表的函数(或方法)。函数的返回值存入 r 中返回。
// 要传入多少参数就在 in 中存入多少元素。
// Call 即可以调用定参函数(参数数量固定),也可以调用变参函数(参数数量可变)。
func (v Value) CallSlice(in []Value) []Value	//调用变参函数老师

例子1:

package mainimport ("fmt""reflect"
)type Skills interface {reading()running()
}type Student struct {Name string "json:name"Age  int    "json:age"
}func (self Student) runing() {fmt.Printf("%s is running\n", self.Name)
}
func (self Student) reading() {fmt.Printf("%s is reading\n", self.Name)
}
func main() {stu1 := Student{Name: "aaa", Age: 34}stu_type := reflect.TypeOf(stu1)fmt.Println(stu_type.NumField())          //2fmt.Println(stu_type.Field(0))            //{Name  string  0 [0] false}fmt.Println(stu_type.FieldByName("Name")) //{{Age  int  16 [1] false} truefmt.Println(stu_type.Field(1))            //{Name  string  0 [0] false}fmt.Println(stu_type.FieldByName("Age"))  //{{Age  int  16 [1] false} true
}

结果:
在这里插入图片描述

例子2:

//通过反射调用结构体中的方法,通过reflect.Value.Method(i int).Call()
//或者reflect.Value.MethodByName(name string).Call()实现
package mainimport ("fmt""reflect"
)type Student struct {Name stringAge  int
}func (this *Student) SetName(name string) {this.Name = namefmt.Printf("set name %s\n", this.Name)
}func (this *Student) SetAge(age int) {this.Age = agefmt.Printf("set age %d\n", age)
}func (this *Student) String() string {fmt.Printf("this is %s\n", this.Name)return this.Name
}func (this *Student) SetAgeAndName(age int, name string) {this.Age = agefmt.Printf("set age %d, name:%s\n", age, name)
}func main() {// 1. 通过名称来调用方法stu1 := &Student{Name: "aaa", Age: 18}val := reflect.ValueOf(stu1)         //获取Value类型,也可以使用reflect.ValueOf(&stu1).Elem()val.MethodByName("String").Call(nil) //调用String方法params := make([]reflect.Value, 1)params[0] = reflect.ValueOf(18)val.MethodByName("SetAge").Call(params) //通过名称调用方法params = make([]reflect.Value, 2)params[0] = reflect.ValueOf(18)params[1] = reflect.ValueOf("ccc")val.MethodByName("SetAgeAndName").Call(params)params = make([]reflect.Value, 1) // 先重设参数个数为1,否则下面会报错误。// 2. 通过索引来调用方法。但可能不太安全。params[0] = reflect.ValueOf("bbb")// val.Method(1).Call(params) //通过方法索引调用val.Method(2).Call(params) //通过方法索引调用	通过索引的方式拿到函数不安全,因为可能每次方法对应的索引不太一样,参数传错可能报错,//这点需要注意!!!fmt.Println(stu1.Name, stu1.Age)}

结果:
在这里插入图片描述

5 reflect.Value 结构体

简单看看即可。

type Value struct {typ *rtype // 变量的类型结构体ptr unsafe.Pointer // 数据指针flag uintptr // 标志位
}

6 Go 语言官方的反射三大定律

官方对 Go 语言的反射功能做了一个抽象的描述,总结出了三大定律:

  1. Reflection goes from interface value to reflection object.
  2. Reflection goes from reflection object to interface value.
  3. To modify a reflection object, the value must be settable.
  • 1)第一个定律的意思是反射将接口变量转换成反射对象 Type 和 Value。
func TypeOf(v interface{}) Type 
func ValueOf(v interface{}) Value
  • 2)第二个定律的意思是反射可以通过反射对象 Value 还原成原先的接口变量,这个指的就是 Value
    结构体提供的 Interface() 方法。
func (v Value) Interface() interface{}
  • 3)第三个定律的功能不是很好理解,它的意思是想用反射功能来修改一个变量的值,前提是这个
    值可以被修改。
    值类型的变量是不可以通过反射来修改,因为在反射之前,传参的时候需要将值变量转换成接口变量,值内容会被浅拷贝,反射对象 Value 指向的数据内存地址不是原变量的内存地址,而是拷贝后的内存地址。这意味着如果值类型变量可以通过反射功能来修改,那么修改操作根本不会影响到原变量的值,那就白白修改了。所以 reflect 包就直接禁止了通过反射来修改值类型的变量。

例如:

package mainimport ("fmt""reflect"
)func test1() {var s int = 42var v = reflect.ValueOf(s)v.SetInt(43)fmt.Println(s)
}
func test2() {var s int = 42// 反射指针类型var v = reflect.ValueOf(&s)// 要拿出指针指向的元素进行修改v.Elem().SetInt(43)fmt.Println(s)
}
func main() {test1()test2()
}

结果,会在对应设置值的行数报错,例如这里的test1:
在这里插入图片描述

7 测试使用反射和不使用反射时的计算效率

package mainimport ("fmt""reflect""time"
)// 测试一百万次计算,使用与不使用反射的效率
const N = 1000000func test1() {var sum = 0t0 := time.Now()for i := 0; i < (N); i++ {var s int = 42// 反射指针类型var v = reflect.ValueOf(&s)// 要拿出指针指向的元素进行修改v.Elem().SetInt(43)sum += s}elapsed := time.Since(t0)fmt.Println("反射赋值 ", "N:", N, "time:", elapsed, ", sum:", sum)
}func test2() {var sum = 0t0 := time.Now()for i := 0; i < (N); i++ {var s int = 42s = 43sum += s}elapsed := time.Since(t0)fmt.Println("直接赋值 ", "N:", N, "time:", elapsed, ", sum:", sum)
}
func main() {//test1()// 反射赋值  N: 1000000 time: 33.0614ms , sum: 43000000test2() //直接赋值  N: 1000000 time: 953.8µs , sum: 43000000
}

下面结果看出,在进行计算比较多或者核心代码即要求高效率的话,不要使用反射去计算,否则效率大大降低。

test1()// 反射赋值  N: 1000000 time: 33.0614ms , sum: 43000000
test2() //直接赋值  N: 1000000 time: 953.8µs , sum: 43000000
查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 5G时代风口浪尖上的音视频开发技术,你还在观望吗?保姆级Android音视频开发学习一篇就够

    需要理解FLV、MP4、TS等容器格式 对于特殊的录制方式要注意软件的处理方式&#xff0c;例如&#xff0c;加片头和片尾的录制功能&#xff0c;追加录制 MP4录制要注意moov box放在文件开始或结束对录制文件的写入和点播的影响 录制时音视频均匀混合的策略 串流 理解视频互动…...

    2024/4/17 21:39:37
  2. vue-MVVM

    1.MVVM vue借鉴了的的是MVVM模型。何为MVVM呢&#xff1f;其实是代表三个单词 M:model 模型层&#xff0c;它主要代表的是一般的js对象{ } &#xff0c;其实代表的就是写在js里面的数组&#xff0c;或者你 可以理解为就是在data数组里面的东西 VM&#xff1a;ViewAndModel 这…...

    2024/4/7 20:08:20
  3. 自顶而下学习react源码 (1) 理念篇

    理念篇 快速响应的瓶颈之一就是cpu限制&#xff0c;浏览器的js线程与gui渲染线程互斥&#xff0c;一旦js执行过长&#xff0c;就会导致卡顿。 ​ 解决这个问题的关键就是&#xff1a;在浏览器每一帧的时间中&#xff0c;预留一些时间给JS线程&#xff0c;React利用这部分时间…...

    2024/4/13 18:22:29
  4. 航班时间-第九届蓝桥省赛-A组

    小 h 前往美国参加了蓝桥杯国际赛。 小 h 的女朋友发现小 h 上午十点出发&#xff0c;上午十二点到达美国&#xff0c;于是感叹到“现在飞机飞得真快&#xff0c;两小时就能到美国了”。 小 h 对超音速飞行感到十分恐惧。 仔细观察后发现飞机的起降时间都是当地时间。 由于…...

    2024/4/14 21:03:03
  5. Microsoft Visual C++ 14.0 is required 的亲测能用解决方案(包括安装包丢失或损坏解决方法)

    需要的所有工具 链接&#xff1a;https://pan.baidu.com/s/1D2AHYQFDKaWl_HXoUqA7DQ?pwdf8cx 提取码&#xff1a;f8cx --来自百度网盘超级会员V5的分享 1. 将iso文件解压 2. 点击 进入刚刚解压的文件夹packages\BuildTools_MSBuild_amd64里选择BuildTools_MSBuild.msi&…...

    2024/4/13 18:23:19
  6. 自顶而在学习react源码 (1) 理念篇

    理念篇 快速响应的瓶颈之一就是cpu限制&#xff0c;浏览器的js线程与gui渲染线程互斥&#xff0c;一旦js执行过长&#xff0c;就会导致卡顿。 ​ 解决这个问题的关键就是&#xff1a;在浏览器每一帧的时间中&#xff0c;预留一些时间给JS线程&#xff0c;React利用这部分时间…...

    2024/4/19 4:15:58
  7. Android实现2D翻转动画

    android中有很多动画效果,用起来非常会对APP展示有不错的效果,这里就来简单实现一个图片2D翻转的动画效果,以此来熟悉Android中动画效果的使用。后面会给出源码(注意:本事例使用Android studio 开发的), 1、首先看看主布局: <FrameLayout xmlns:android="http:…...

    2024/4/13 18:23:54
  8. TCP网络编程模型从入门到实战基础篇,单服务器单个用户非并发版本

    文章目录 前言一、网络编程实践的必备基础知识二、系统调用方法刨析 1.socket2.bind3.listen4.accept5.connect三、实现一个简单的功能, 服务器将单客户端传来的小写字母转成大写总结以及留下疑问讨论解决办法前言 本文仅仅针对对于学校学习网络编程之后不知道如何运用的情况,…...

    2024/4/5 3:13:49
  9. 27,flutterrow中组件位置

    //插入行 ui->usrTblWidget->insertRow(0); ui->usrTblWidget->setItem(0,0,usr); //追加聊天记录 ui->msgBrowser->setTextColor(Qt::gray); ui->msgBrowser->append( QString("%1 上线了").arg(username)); //在线人数更新 ui->…...

    2024/4/18 5:33:02
  10. 816. 数组翻转

    给定一个长度为 n 的数组 a 和一个整数 size&#xff0c;请你编写一个函数&#xff0c;void reverse(int a[], int size)&#xff0c;实现将数组 aa 中的前 size 个数翻转。 输出翻转后的数组 a。 输入格式 第一行包含两个整数 n 和 size。 第二行包含 n 个整数&#xff0c…...

    2024/4/13 18:23:34
  11. 科学 | MIT张锋团队开发全新mRNA递送平台

    最近&#xff0c;顶级学术期刊《科学》&#xff08;Science&#xff09;在线发表了霍华德休斯医学研究所、博德研究所、麻省理工学院、哈佛大学等团队的研究人员联合完成的一项研究&#xff0c;题为“Mammalian retrovirus-like protein PEG10 packages its own mRNA and can b…...

    2024/4/25 23:52:28
  12. 1039. 到底买不买

    1039. 到底买不买 ⼩红想买些珠⼦做⼀串⾃⼰喜欢的珠串。卖珠⼦的摊主有很多串五颜六⾊的珠串&#xff0c;但是不肯把任何⼀ 串拆散了卖。于是⼩红要你帮忙判断⼀下&#xff0c;某串珠⼦⾥是否包含了全部⾃⼰想要的珠⼦&#xff1f;如果是&#xff0c;那 么告诉她有多少多余的…...

    2024/4/13 18:23:44
  13. 设计模式总结(Python)

    前言UML介绍监听模式状态模式中介模式装饰模式单例模式克隆模式职责模式代理模式外观模式迭代模式组合模式构建模式适配模式策略模式工厂模式命令模式备忘模式享元模式访问模式模板模式桥接模式解释模式过滤器模式对象池技术回调机制MVC模式设计原则 前言 #finished on 2022/…...

    2024/4/21 12:56:29
  14. Golang for 循环中append操作的坑

    一 问题来源 最近做的一个项目中 &#xff0c;在使用for循环&#xff0c;遍历用户信息时&#xff0c;遇到一个坑&#xff0c;觉得很容易用错 &#xff0c;故写下这篇文章来警示自己。 二 问题描述 简单的说&#xff0c;就是我在使用for range对slice进行append地址操作&#…...

    2024/4/13 18:23:29
  15. 21道Android高级面试题,面试官都被搞愣了,谈谈我认为的高级Android开发到底应该是怎样的

    很多需要register和unregister的系统服务要在合适的时候进行unregister,手动添加的listener也需要及时移除 6.如何避免OOM? 1&#xff09;.使用更加轻量的数据结构&#xff1a; 如使用ArrayMap/SparseArray替代HashMap,HashMap更耗内存&#xff0c;因为它需要额外的实例对象…...

    2024/4/19 10:08:29
  16. JUC编程——上

    文章目录一、什么是JUC二、 线程和进程三、并发和并行四、线程有几个状态wait/sleep五、Lock锁&#xff08;重点&#xff09;Synchronized 与Lock 的区别六、生产者和消费者的关系生产者和消费者问题 Synchronized 版JUC版的生产者和消费者问题Condition 精准的通知和唤醒线程七…...

    2024/4/7 20:08:08
  17. linux驱动 定时器

    目录 1.1、CONFIG_HZ 2、jiffies 2.1、jiffies_64 2.2、系统运行时间 2.3、时间绕回 3、API函数 4、内核定时器 4.1、timer_list结构体 4.2、init_timer()函数 4.3、add_timer()函数 4.4、del_timer()函数 4.5、del_timer_sync()函数 4.6、mod_timer()函数 5、Li…...

    2024/4/27 5:30:37
  18. Linux -- 防火墙操作

    因为之前搭建了GitLab 本地仓库&#xff0c;需要开启8888 端口&#xff0c;后面直接临时关闭了防火墙&#xff0c;后面电脑重启后&#xff0c;又访问不了防火墙了&#xff0c;一时记不清对应操作了&#xff0c;所以总结一些防火墙操作&#xff0c;以后可以参考 先查看防火墙状…...

    2024/4/19 17:50:41
  19. 【Day4】ES5(循环别名 ,数组,数组遍历,数组排序,二维数组)

    日期&#xff1a;2月3日 1. 循环的别名 别名: for () { } 别名: while() { } break 结束掉离他最近的循环 break 别名&#xff1a; 结束掉指定的循环 2. 循环的别名的使用场景 1&#xff1a;存在于嵌套循环 2、需求中包含 要通过内部循环结束掉外部循环 这样的场景 那么 我们…...

    2024/4/13 18:23:44
  20. leetcode[1414]和为 K 的最少斐波那契数字数目 python3实现(贪心法)

    # 给你数字 k &#xff0c;请你返回和为 k 的斐波那契数字的最少数目&#xff0c;其中&#xff0c;每个斐波那契数字都可以被使用多次。 # # 斐波那契数字定义为&#xff1a; # # # F1 1 # F2 1 # Fn Fn-1 Fn-2 &#xff0c; 其中 n > 2 。 # # # 数据…...

    2024/4/13 18:23:24

最新文章

  1. 开了个新店!

    大家好&#xff0c;我是麦鸽。 一言难尽&#xff0c;五一之前&#xff0c;把大A里的钱都提出来了&#xff0c;又整了一个新的小店。熟悉我的老读者应该都知道&#xff0c;我主业是做嵌入式的&#xff0c;后面慢慢转了技术管理的路线。平时也搞点副业&#xff0c;餐饮店就是其中…...

    2024/5/4 14:09:12
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. milvus search api的数据结构

    search api的数据结构 此api的功能是向量相似度搜索(vector similarity search) 一个完整的search例子: 服务端collection是一个hnsw类型的索引。 import random from pymilvus import (connections,Collection, )dim 128if __name__ __main__:connections.connect(alias…...

    2024/5/3 3:17:04
  4. ROS2高效学习第十章 -- ros2 高级组件之大型项目中的 launch 其二

    ros2 高级组件之大型项目中的 launch 1 前言和资料2 正文2.1 启动 turtlesim&#xff0c;生成一个 turtle &#xff0c;设置背景色2.2 使用 event handler 重写上节的样例2.3 turtle_tf_mimic_rviz_launch 样例 3 总结 1 前言和资料 早在ROS2高效学习第四章 – ros2 topic 编程…...

    2024/5/3 15:22:43
  5. 《c++》多态案例一.电脑组装

    一.代码展示 #include <iostream> using namespace std; class CPU { public://抽象计算函数virtual void calculate() 0;};class CVideoCard { public://抽象显示函数virtual void display() 0;}; class Memory { public://抽象存储函数virtual void storage() 0;};…...

    2024/5/2 3:23:54
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/2 16:16:39
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/3 23:10:03
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/2 15:04:34
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/4 2:59:34
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/2 9:07:46
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57