美文网首页iOS学习
GPUimage内存释放

GPUimage内存释放

作者: monkey姜啦 | 来源:发表于2019-05-21 16:19 被阅读0次

1、 上下文释放

GPUImageMovieWriter.m
    inputRotation = kGPUImageNoRotation;
    _movieWriterContext = [GPUImageContext sharedImageProcessingContext];
//    _movieWriterContext = [[GPUImageContext alloc] init];
//    [_movieWriterContext useSharegroup:[[[GPUImageContext sharedImageProcessingContext] context] sharegroup]];

GPUImageContext.m  ##很重要,会一直增加内存,导致app被kill
- (void)dealloc {
    if (_coreVideoTextureCache != NULL) {
        CFRelease(_coreVideoTextureCache);
    }
}

2、必须要加的代码,内部的buffer回收方法

[[GPUImageContext sharedImageProcessingContext].framebufferCache purgeAllUnassignedFramebuffers];

3、循环引用

    __weak typeof(self) weakSelf = self;
    __weak typeof(uielement)weakUielement = uielement;
    [progressFilter setFrameProcessingCompletionBlock:^(GPUImageOutput *output, CMTime time) {
        dispatch_async(dispatch_get_main_queue(), ^{
            __strong typeof(weakSelf)self = weakSelf;
            int index = (int)time.value /time.timescale;
            NSLog(@"index:%d",index);
            self.sImageView.image = [UIImage imageNamed:@"000"];
            self.sImageView.transform = CGAffineTransformMakeRotation(M_PI*index);
            [weakUielement updateWithTimestamp:time];
        });
    }];

相关文章

  • GPUimage内存释放

    1、 上下文释放 2、必须要加的代码,内部的buffer回收方法 3、循环引用

  • 十一、闭包(堆栈内存释放问题)------ 2020-04-05

    1、堆内存释放问题: 2、栈内存释放问题:

  • kkbox-ios-dev笔记(三) - 内存管理/代理

    内存管理(一) 内存泄漏:该释放的对象, 没有被释放(已经不再使用的对象, 没有被释放)无效内存引用:内存已经被释...

  • malloc,free底层实现

    设想:内存碎片:由于malloc在内存中连续sbrk申请内存,而释放内存只能从后往前释放。为了达到可以先释放前面申...

  • 链接收藏

    iOS面试题 野指针 使用了释放的内存 内存泄漏 内存没有释放

  • free()后内存不释放问题 - 内存缓冲池技术

    free()后内存不释放问题 - 内存缓冲池技术 free()后内存不释放问题 - 内存缓冲池技术

  • 内存泄漏 Instruments Leak使用

    内存泄漏就是应该释放而没有释放的内存! 内存溢出 out of memory:是指程序在申请内存时,没有足够的内存...

  • (1) SGI的Allocator分析

    C++标准的内存配置和释放动作: 在sgi STL中:内存配置--> alloc::allocator()内存释放...

  • 内存释放

    让对象等于 null (空对象指针),可以不占用堆内存,堆内存不被变量占用时,可以释放(浏览器在它空闲的时候回收)...

  • 内存释放

    堆内存对象数据类型,或者函数数据类型,在定义的时候,首先都会开辟一个堆内存,堆内存有一个引用地址,如果外面有变量知...

网友评论

    本文标题:GPUimage内存释放

    本文链接:https://www.haomeiwen.com/subject/adrlzqtx.html